summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSean Christopherson <sean.j.christopherson@intel.com>2019-12-21 05:45:00 +0100
committerBorislav Petkov <bp@suse.de>2020-01-13 17:48:36 +0100
commit501444905fcb4166589fda99497c273ac5efc65e (patch)
treea2d4ebdfdb37b900003c3a549344824bf15b7606
parentx86/mce: WARN once if IA32_FEAT_CTL MSR is left unlocked (diff)
downloadlinux-501444905fcb4166589fda99497c273ac5efc65e.tar.xz
linux-501444905fcb4166589fda99497c273ac5efc65e.zip
x86/centaur: Use common IA32_FEAT_CTL MSR initialization
Use the recently added IA32_FEAT_CTL MSR initialization sequence to opportunistically enable VMX support when running on a Centaur CPU. Signed-off-by: Sean Christopherson <sean.j.christopherson@intel.com> Signed-off-by: Borislav Petkov <bp@suse.de> Link: https://lkml.kernel.org/r/20191221044513.21680-7-sean.j.christopherson@intel.com
-rw-r--r--arch/x86/Kconfig.cpu2
-rw-r--r--arch/x86/kernel/cpu/centaur.c2
2 files changed, 3 insertions, 1 deletions
diff --git a/arch/x86/Kconfig.cpu b/arch/x86/Kconfig.cpu
index 98be76fa2978..cba5b64266df 100644
--- a/arch/x86/Kconfig.cpu
+++ b/arch/x86/Kconfig.cpu
@@ -389,7 +389,7 @@ config X86_DEBUGCTLMSR
config IA32_FEAT_CTL
def_bool y
- depends on CPU_SUP_INTEL
+ depends on CPU_SUP_INTEL || CPU_SUP_CENTAUR
menuconfig PROCESSOR_SELECT
bool "Supported processor vendors" if EXPERT
diff --git a/arch/x86/kernel/cpu/centaur.c b/arch/x86/kernel/cpu/centaur.c
index 14433ff5b828..084f6040b4df 100644
--- a/arch/x86/kernel/cpu/centaur.c
+++ b/arch/x86/kernel/cpu/centaur.c
@@ -250,6 +250,8 @@ static void init_centaur(struct cpuinfo_x86 *c)
set_cpu_cap(c, X86_FEATURE_LFENCE_RDTSC);
#endif
+ init_ia32_feat_ctl(c);
+
if (cpu_has(c, X86_FEATURE_VMX))
centaur_detect_vmx_virtcap(c);
}