]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
x86/bugs: Report correct retbleed mitigation status
authorDavid Kaplan <david.kaplan@amd.com>
Mon, 15 Sep 2025 13:47:06 +0000 (08:47 -0500)
committerBorislav Petkov (AMD) <bp@alien8.de>
Tue, 16 Sep 2025 11:32:18 +0000 (13:32 +0200)
On Intel CPUs, the default retbleed mitigation is IBRS/eIBRS but this
requires that a similar spectre_v2 mitigation is applied.  If the user
selects a different spectre_v2 mitigation (like spectre_v2=retpoline) a
warning is printed but sysfs will still report 'Mitigation: IBRS' or
'Mitigation: Enhanced IBRS'.  This is incorrect because retbleed is not
mitigated, and IBRS is not actually set.

Fix this by choosing RETBLEED_MITIGATION_NONE in this scenario so the
kernel correctly reports the system as vulnerable to retbleed.

Signed-off-by: David Kaplan <david.kaplan@amd.com>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Link: https://lore.kernel.org/20250915134706.3201818-1-david.kaplan@amd.com
arch/x86/kernel/cpu/bugs.c

index 66dbb3bd27912320281f160ea25ac383f364c80b..6a526ae1fe9933229947db5b7676a18328fe2204 100644 (file)
@@ -1462,8 +1462,10 @@ static void __init retbleed_update_mitigation(void)
                        retbleed_mitigation = RETBLEED_MITIGATION_EIBRS;
                        break;
                default:
-                       if (retbleed_mitigation != RETBLEED_MITIGATION_STUFF)
+                       if (retbleed_mitigation != RETBLEED_MITIGATION_STUFF) {
                                pr_err(RETBLEED_INTEL_MSG);
+                               retbleed_mitigation = RETBLEED_MITIGATION_NONE;
+                       }
                }
        }