[PATCH v2 2/3] KVM: x86: Use kvm_cpu_cap_has() for EFER bits enablement checks

Yosry Ahmed
2026-03-07T01:16:29Z

Instead of checking that the hardware supports underlying features for
EFER bits, check if KVM supports them. It is practically the same, but
this removes a subtle dependency on kvm_set_cpu_caps() enabling the
relevant CPUID features.

No functional change intended.

Suggested-by: Sean Christopherson <seanjc@google.com>
Signed-off-by: Yosry Ahmed <yosry@kernel.org>
---
arch/x86/kvm/x86.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index 1aae2bc380d1b..0b5d48e75b657 100644
--- a/arch/x86/kvm/x86.c
+++ b/arch/x86/kvm/x86.c
@@ -10027,13 +10027,13 @@ EXPORT_SYMBOL_FOR_KVM_INTERNAL(kvm_setup_xss_caps);

static void kvm_setup_efer_caps(void)
{
- if (boot_cpu_has(X86_FEATURE_NX))
+ if (kvm_cpu_cap_has(X86_FEATURE_NX))
kvm_enable_efer_bits(EFER_NX);

- if (boot_cpu_has(X86_FEATURE_FXSR_OPT))
+ if (kvm_cpu_cap_has(X86_FEATURE_FXSR_OPT))
kvm_enable_efer_bits(EFER_FFXSR);

- if (boot_cpu_has(X86_FEATURE_AUTOIBRS))
+ if (kvm_cpu_cap_has(X86_FEATURE_AUTOIBRS))
kvm_enable_efer_bits(EFER_AUTOIBRS);
}

--
2.53.0.473.g4a7958ca14-goog