To properly virtualize IBRS on Intel, an IBPB is executed on emulated VM-exits to provide separate predictor modes for L1 and L2. Similar handling is theoretically needed for AMD, unless IbrsSameMode is enumerated by the CPU (which should be the case for most/all CPUs anyway). For correctness and clarity, this series generalizes the handling to apply for both Intel and AMD as needed. I am not sure if this series would land through the kvm-x86 tree or the tip/x86 tree. Yosry Ahmed (3): x86/cpufeatures: Define X86_FEATURE_AMD_IBRS_SAME_MODE KVM: x86: Propagate AMD's IbrsSameMode to the guest KVM: x86: Generalize IBRS virtualization on emulated VM-exit arch/x86/include/asm/cpufeatures.h | 1 + arch/x86/kvm/cpuid.c | 1 + arch/x86/kvm/svm/nested.c | 2 ++ arch/x86/kvm/vmx/nested.c | 11 +---------- arch/x86/kvm/x86.h | 18 ++++++++++++++++++ tools/arch/x86/include/asm/cpufeatures.h | 1 + 6 files changed, 24 insertions(+), 10 deletions(-) -- 2.48.1.601.g30ceb7b040-goog