]> git.ipfire.org Git - thirdparty/linux.git/commit
KVM: x86: Add IBPB_BRTYPE support
authorJosh Poimboeuf <jpoimboe@kernel.org>
Fri, 25 Aug 2023 07:01:35 +0000 (00:01 -0700)
committerSean Christopherson <seanjc@google.com>
Wed, 4 Oct 2023 22:15:52 +0000 (15:15 -0700)
commit6f0f23ef76be11bc6ace10df5e807f3542da8772
tree8332a697a7d0cdae6c7c874b9aaaecd2e71e2880
parentf10a570b093e60c6bd3f210ae909f014f421352a
KVM: x86: Add IBPB_BRTYPE support

Add support for the IBPB_BRTYPE CPUID flag, which indicates that IBPB
includes branch type prediction flushing.

Note, like SRSO_NO, advertise support for IBPB_BRTYPE even if it's not
enumerated by in the raw CPUID, i.e. bypass the cpuid_count() in
__kvm_cpu_cap_mask().  Some CPUs that gained support via a uCode patch
don't report IBPB_BRTYPE via CPUID (the kernel forces the flag).

Opportunistically use kvm_cpu_cap_check_and_set() for SRSO_NO instead
of manually querying host support (cpu_feature_enabled() and
boot_cpu_has() yield the same end result in this case).

Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org>
Link: https://lore.kernel.org/r/79d5f5914fb42c2c62418ffbcd78f138645ded21.1692919072.git.jpoimboe@kernel.org
Signed-off-by: Sean Christopherson <seanjc@google.com>
arch/x86/kvm/cpuid.c