From: Pawan Gupta Date: Wed, 21 May 2025 05:35:20 +0000 (-0700) Subject: x86/bugs: Fix spectre_v2 mitigation default on Intel X-Git-Tag: v6.16-rc1~195^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6a7c3c2606105a41dde81002c0037420bc1ddf00;p=thirdparty%2Fkernel%2Flinux.git x86/bugs: Fix spectre_v2 mitigation default on Intel Commit 480e803dacf8 ("x86/bugs: Restructure spectre_v2 mitigation") inadvertently changed the spectre-v2 mitigation default from eIBRS to IBRS on Intel. While splitting the spectre_v2 mitigation in select/update/apply functions, eIBRS and IBRS selection logic was separated in select and update. This caused IBRS selection to not consider that eIBRS mitigation is already selected, fix it. Fixes: 480e803dacf8 ("x86/bugs: Restructure spectre_v2 mitigation") Signed-off-by: Pawan Gupta Signed-off-by: Borislav Petkov (AMD) Link: https://lore.kernel.org/20250520-eibrs-fix-v1-1-91bacd35ed09@linux.intel.com --- diff --git a/arch/x86/kernel/cpu/bugs.c b/arch/x86/kernel/cpu/bugs.c index 3d5796d25f786..7f94e6a5497d9 100644 --- a/arch/x86/kernel/cpu/bugs.c +++ b/arch/x86/kernel/cpu/bugs.c @@ -2105,7 +2105,8 @@ static void __init spectre_v2_select_mitigation(void) static void __init spectre_v2_update_mitigation(void) { - if (spectre_v2_cmd == SPECTRE_V2_CMD_AUTO) { + if (spectre_v2_cmd == SPECTRE_V2_CMD_AUTO && + !spectre_v2_in_eibrs_mode(spectre_v2_enabled)) { if (IS_ENABLED(CONFIG_MITIGATION_IBRS_ENTRY) && boot_cpu_has_bug(X86_BUG_RETBLEED) && retbleed_mitigation != RETBLEED_MITIGATION_NONE &&