Commit 3c01673e authored by Josh Poimboeuf's avatar Josh Poimboeuf Committed by Greg Kroah-Hartman

x86/speculation/mds: Add 'mitigations=' support for MDS

commit 5c14068f upstream

Add MDS to the new 'mitigations=' cmdline option.
Signed-off-by: default avatarJosh Poimboeuf <jpoimboe@redhat.com>
Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 72a36b7b
...@@ -2587,6 +2587,7 @@ ...@@ -2587,6 +2587,7 @@
spectre_v2_user=off [X86] spectre_v2_user=off [X86]
spec_store_bypass_disable=off [X86,PPC] spec_store_bypass_disable=off [X86,PPC]
l1tf=off [X86] l1tf=off [X86]
mds=off [X86]
auto (default) auto (default)
Mitigate all CPU vulnerabilities, but leave SMT Mitigate all CPU vulnerabilities, but leave SMT
...@@ -2601,6 +2602,7 @@ ...@@ -2601,6 +2602,7 @@
if needed. This is for users who always want to if needed. This is for users who always want to
be fully mitigated, even if it means losing SMT. be fully mitigated, even if it means losing SMT.
Equivalent to: l1tf=flush,nosmt [X86] Equivalent to: l1tf=flush,nosmt [X86]
mds=full,nosmt [X86]
mminit_loglevel= mminit_loglevel=
[KNL] When CONFIG_DEBUG_MEMORY_INIT is set, this [KNL] When CONFIG_DEBUG_MEMORY_INIT is set, this
......
...@@ -233,7 +233,7 @@ static const char * const mds_strings[] = { ...@@ -233,7 +233,7 @@ static const char * const mds_strings[] = {
static void __init mds_select_mitigation(void) static void __init mds_select_mitigation(void)
{ {
if (!boot_cpu_has_bug(X86_BUG_MDS)) { if (!boot_cpu_has_bug(X86_BUG_MDS) || cpu_mitigations_off()) {
mds_mitigation = MDS_MITIGATION_OFF; mds_mitigation = MDS_MITIGATION_OFF;
return; return;
} }
...@@ -244,7 +244,8 @@ static void __init mds_select_mitigation(void) ...@@ -244,7 +244,8 @@ static void __init mds_select_mitigation(void)
static_branch_enable(&mds_user_clear); static_branch_enable(&mds_user_clear);
if (mds_nosmt && !boot_cpu_has(X86_BUG_MSBDS_ONLY)) if (!boot_cpu_has(X86_BUG_MSBDS_ONLY) &&
(mds_nosmt || cpu_mitigations_auto_nosmt()))
cpu_smt_disable(false); cpu_smt_disable(false);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment