OSDN Git Service

x86/kvm/VMX: drop bad asm() clobber from nested_vmx_check_vmentry_hw()
authorJan Beulich <JBeulich@suse.com>
Mon, 27 May 2019 08:45:44 +0000 (02:45 -0600)
committerPaolo Bonzini <pbonzini@redhat.com>
Wed, 5 Jun 2019 12:14:48 +0000 (14:14 +0200)
While upstream gcc doesn't detect conflicts on cc (yet), it really
should, and hence "cc" should not be specified for asm()-s also having
"=@cc<cond>" outputs. (It is quite pointless anyway to specify a "cc"
clobber in x86 inline assembly, since the compiler assumes it to be
always clobbered, and has no means [yet] to suppress this behavior.)

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Fixes: bbc0b8239257 ("KVM: nVMX: Capture VM-Fail via CC_{SET,OUT} in nested early checks")
Reviewed-by: Sean Christopherson <sean.j.christopherson@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/vmx/nested.c

index 1032f06..0f705c7 100644 (file)
@@ -2781,7 +2781,7 @@ static int nested_vmx_check_vmentry_hw(struct kvm_vcpu *vcpu)
                [launched]"i"(offsetof(struct loaded_vmcs, launched)),
                [host_state_rsp]"i"(offsetof(struct loaded_vmcs, host_state.rsp)),
                [wordsize]"i"(sizeof(ulong))
-             : "cc", "memory"
+             : "memory"
        );
 
        if (vmx->msr_autoload.host.nr)