[tip: x86/cpu] x86/cpu: Print "VMX disabled" error message iff KVM is enabled

From: tip-bot2 for Sean Christopherson
Date: Wed Jan 15 2020 - 07:39:31 EST


The following commit has been merged into the x86/cpu branch of tip:

Commit-ID: bb02e2cb715a3f3552dbe765ea4a07799e4dff43
Gitweb: https://git.kernel.org/tip/bb02e2cb715a3f3552dbe765ea4a07799e4dff43
Author: Sean Christopherson <sean.j.christopherson@xxxxxxxxx>
AuthorDate: Tue, 14 Jan 2020 12:25:45 -08:00
Committer: Borislav Petkov <bp@xxxxxxx>
CommitterDate: Wed, 15 Jan 2020 13:26:50 +01:00

x86/cpu: Print "VMX disabled" error message iff KVM is enabled

Don't print an error message about VMX being disabled by BIOS if KVM,
the sole user of VMX, is disabled. E.g. if KVM is disabled and the MSR
is unlocked, the kernel will intentionally disable VMX when locking
feature control and then complain that "BIOS" disabled VMX.

Fixes: ef4d3bf19855 ("x86/cpu: Clear VMX feature flag if VMX is not fully enabled")
Signed-off-by: Sean Christopherson <sean.j.christopherson@xxxxxxxxx>
Signed-off-by: Borislav Petkov <bp@xxxxxxx>
Link: https://lkml.kernel.org/r/20200114202545.20296-1-sean.j.christopherson@xxxxxxxxx
---
arch/x86/kernel/cpu/feat_ctl.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/arch/x86/kernel/cpu/feat_ctl.c b/arch/x86/kernel/cpu/feat_ctl.c
index 24a4fdc..0268185 100644
--- a/arch/x86/kernel/cpu/feat_ctl.c
+++ b/arch/x86/kernel/cpu/feat_ctl.c
@@ -133,8 +133,9 @@ update_caps:

if ( (tboot && !(msr & FEAT_CTL_VMX_ENABLED_INSIDE_SMX)) ||
(!tboot && !(msr & FEAT_CTL_VMX_ENABLED_OUTSIDE_SMX))) {
- pr_err_once("VMX (%s TXT) disabled by BIOS\n",
- tboot ? "inside" : "outside");
+ if (IS_ENABLED(CONFIG_KVM_INTEL))
+ pr_err_once("VMX (%s TXT) disabled by BIOS\n",
+ tboot ? "inside" : "outside");
clear_cpu_cap(c, X86_FEATURE_VMX);
} else {
#ifdef CONFIG_X86_VMX_FEATURE_NAMES