• Paolo Bonzini's avatar
    KVM: x86: reinstate vendor-agnostic check on SPEC_CTRL cpuid bits · 39485ed9
    Paolo Bonzini authored
    Until commit e7c587da ("x86/speculation: Use synthetic bits for
    IBRS/IBPB/STIBP"), KVM was testing both Intel and AMD CPUID bits before
    allowing the guest to write MSR_IA32_SPEC_CTRL and MSR_IA32_PRED_CMD.
    Testing only Intel bits on VMX processors, or only AMD bits on SVM
    processors, fails if the guests are created with the "opposite" vendor
    as the host.
    
    While at it, also tweak the host CPU check to use the vendor-agnostic
    feature bit X86_FEATURE_IBPB, since we only care about the availability
    of the MSR on the host here and not about specific CPUID bits.
    
    Fixes: e7c587da ("x86/speculation: Use synthetic bits for IBRS/IBPB/STIBP")
    Cc: stable@vger.kernel.org
    Reported-by: default avatarDenis V. Lunev <den@openvz.org>
    Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    39485ed9
svm.c 114 KB