File 5bf7db69-VMX-allow-migration-of-guests-with-SSBD-enabled.patch of Package xen.9809

References: bsc#1116380

Subject: VMX: allow migration of guests with SSBD enabled
From: Jan Beulich jbeulich@suse.com Fri Nov 23 11:54:35 2018 +0100
Date: Fri Nov 23 11:54:35 2018 +0100:
Git: 710cc096971019bc2e5a9aabb9af1acca0b5b9e7

The backport of cd53023df9 ("x86/msr: Virtualise MSR_SPEC_CTRL.SSBD for
guests to use") did not mirror the PV side change into the HVM (VMX-
specific) code path.

Signed-off-by: Jan Beulich <jbeulich@suse.com>

diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c
index a9e87b5a9a..82e3c2ceca 100644
--- a/xen/arch/x86/hvm/vmx/vmx.c
+++ b/xen/arch/x86/hvm/vmx/vmx.c
@@ -905,7 +905,8 @@ static int vmx_load_msr(struct vcpu *v, struct hvm_msr *ctxt)
              * ignored) when STIBP isn't enumerated in hardware.
              */
             else if ( ctxt->msr[i].val &
-                      ~(SPEC_CTRL_IBRS | SPEC_CTRL_STIBP) )
+                      ~(SPEC_CTRL_IBRS | SPEC_CTRL_STIBP |
+                        (boot_cpu_has(X86_FEATURE_SSBD) ? SPEC_CTRL_SSBD : 0)) )
                 err = -ENXIO;
             else
                 v->arch.spec_ctrl = ctxt->msr[i].val;
openSUSE Build Service is sponsored by