From: Andrew Cooper Date: Mon, 5 Jun 2023 10:09:11 +0000 (+0100) Subject: x86/spec-ctrl: Use a taint for CET without MSR_SPEC_CTRL X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=3f63f4510422c29fda7ba238b880cbb53eca34fe;p=people%2Faperard%2Fxen-unstable.git x86/spec-ctrl: Use a taint for CET without MSR_SPEC_CTRL Reword the comment for 'S' to include an incompatible set of features on the same core. Signed-off-by: Andrew Cooper Reviewed-by: Jan Beulich --- diff --git a/xen/arch/x86/spec_ctrl.c b/xen/arch/x86/spec_ctrl.c index ec4bcdd97e..7ad7494105 100644 --- a/xen/arch/x86/spec_ctrl.c +++ b/xen/arch/x86/spec_ctrl.c @@ -1132,7 +1132,10 @@ void __init init_speculation_mitigations(void) if ( read_cr4() & X86_CR4_CET ) { if ( !has_spec_ctrl ) + { printk(XENLOG_WARNING "?!? CET active, but no MSR_SPEC_CTRL?\n"); + add_taint(TAINT_CPU_OUT_OF_SPEC); + } else if ( opt_ibrs == -1 ) opt_ibrs = ibrs = true; diff --git a/xen/common/kernel.c b/xen/common/kernel.c index fd975ae21e..719b08d6c7 100644 --- a/xen/common/kernel.c +++ b/xen/common/kernel.c @@ -373,7 +373,7 @@ unsigned int tainted; * 'H' - HVM forced emulation prefix is permitted. * 'I' - Platform is insecure (usually due to an errata on the platform). * 'M' - Machine had a machine check experience. - * 'S' - Out of spec CPU (One core has a feature incompatible with others). + * 'S' - Out of spec CPU (Incompatible features on one or more cores). * * The string is overwritten by the next call to print_taint(). */