diff options
author | Avi Kivity <avi@redhat.com> | 2010-12-21 09:51:50 -0500 |
---|---|---|
committer | Avi Kivity <avi@redhat.com> | 2011-01-12 04:31:12 -0500 |
commit | 16d8f72f70a85ce333788204a69318827130ca75 (patch) | |
tree | 4b947abc715c566af88eca1124103737c1948f4c /arch/x86/kvm | |
parent | c445f8ef43bd9d2fb28213920d9b21f2465d22df (diff) |
KVM: VMX: Correct asm constraint in vmcs_load()/vmcs_clear()
'error' is byte sized, so use a byte register constraint.
Acked-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Diffstat (limited to 'arch/x86/kvm')
-rw-r--r-- | arch/x86/kvm/vmx.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c index a713c69bfcee..67c085273510 100644 --- a/arch/x86/kvm/vmx.c +++ b/arch/x86/kvm/vmx.c | |||
@@ -477,7 +477,7 @@ static void vmcs_clear(struct vmcs *vmcs) | |||
477 | u8 error; | 477 | u8 error; |
478 | 478 | ||
479 | asm volatile (__ex(ASM_VMX_VMCLEAR_RAX) "; setna %0" | 479 | asm volatile (__ex(ASM_VMX_VMCLEAR_RAX) "; setna %0" |
480 | : "=g"(error) : "a"(&phys_addr), "m"(phys_addr) | 480 | : "=qm"(error) : "a"(&phys_addr), "m"(phys_addr) |
481 | : "cc", "memory"); | 481 | : "cc", "memory"); |
482 | if (error) | 482 | if (error) |
483 | printk(KERN_ERR "kvm: vmclear fail: %p/%llx\n", | 483 | printk(KERN_ERR "kvm: vmclear fail: %p/%llx\n", |
@@ -490,7 +490,7 @@ static void vmcs_load(struct vmcs *vmcs) | |||
490 | u8 error; | 490 | u8 error; |
491 | 491 | ||
492 | asm volatile (__ex(ASM_VMX_VMPTRLD_RAX) "; setna %0" | 492 | asm volatile (__ex(ASM_VMX_VMPTRLD_RAX) "; setna %0" |
493 | : "=g"(error) : "a"(&phys_addr), "m"(phys_addr) | 493 | : "=qm"(error) : "a"(&phys_addr), "m"(phys_addr) |
494 | : "cc", "memory"); | 494 | : "cc", "memory"); |
495 | if (error) | 495 | if (error) |
496 | printk(KERN_ERR "kvm: vmptrld %p/%llx fail\n", | 496 | printk(KERN_ERR "kvm: vmptrld %p/%llx fail\n", |