]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
x86/spec: Always set IBRS to guest value on VMENTER and host on VMEXIT (redux)
authorKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Thu, 11 Jan 2018 22:34:33 +0000 (17:34 -0500)
committerKirtikar Kashyap <kirtikar.kashyap@oracle.com>
Fri, 12 Jan 2018 18:36:35 +0000 (10:36 -0800)
The commit bc5d49f8ee73ddf252f8a4ed106643abed3bb4d6
that was pulled was a bit stale and missing an important change.

We will set the IBRS to 0 unconditionally on VMENTER.

Orabug: 27378451

Reported-by: Liran Alon <liran.alon@oracle.com>
Reviewed-by: Liran Alon <liran.alon@oracle.com>
Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Signed-off-by: Brian Maly <brian.maly@oracle.com>
Signed-off-by: Kirtikar Kashyap <kirtikar.kashyap@oracle.com>
arch/x86/kvm/vmx.c

index 0ce64443f9ef5a7243c1b14c3bc92267033436a6..3d6da9efdda79e72cae586f628183e6fc4b01af2 100644 (file)
@@ -8192,8 +8192,7 @@ static void __noclone vmx_vcpu_run(struct kvm_vcpu *vcpu)
 
        vmx->__launched = vmx->loaded_vmcs->launched;
 
-       if (ibrs_inuse &&
-           vmx->spec_ctrl != SPEC_CTRL_FEATURE_ENABLE_IBRS)
+       if (ibrs_inuse)
                wrmsrl(MSR_IA32_SPEC_CTRL, vmx->spec_ctrl);
 
        asm(