x86/srso: Correct the mitigation status when SMT is disabled
authorBorislav Petkov (AMD) <bp@alien8.de>
Tue, 15 Aug 2023 09:53:13 +0000 (11:53 +0200)
committerBorislav Petkov (AMD) <bp@alien8.de>
Fri, 18 Aug 2023 10:43:10 +0000 (12:43 +0200)
Specify how is SRSO mitigated when SMT is disabled. Also, correct the
SMT check for that.

Fixes: e9fbc47b818b ("x86/srso: Disable the mitigation on unaffected configurations")
Suggested-by: Josh Poimboeuf <jpoimboe@kernel.org>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Acked-by: Josh Poimboeuf <jpoimboe@kernel.org>
Link: https://lore.kernel.org/r/20230814200813.p5czl47zssuej7nv@treble
arch/x86/kernel/cpu/bugs.c

index 9026e3fe9f6c78084b71fb3539a13657a45b39fa..f081d26616ac1ce9aebf720ce3430bece3a02025 100644 (file)
@@ -2428,8 +2428,7 @@ static void __init srso_select_mitigation(void)
                 * Zen1/2 with SMT off aren't vulnerable after the right
                 * IBPB microcode has been applied.
                 */
-               if ((boot_cpu_data.x86 < 0x19) &&
-                   (!cpu_smt_possible() || (cpu_smt_control == CPU_SMT_DISABLED))) {
+               if (boot_cpu_data.x86 < 0x19 && !cpu_smt_possible()) {
                        setup_force_cpu_cap(X86_FEATURE_SRSO_NO);
                        return;
                }
@@ -2714,7 +2713,7 @@ static ssize_t retbleed_show_state(char *buf)
 static ssize_t srso_show_state(char *buf)
 {
        if (boot_cpu_has(X86_FEATURE_SRSO_NO))
-               return sysfs_emit(buf, "Not affected\n");
+               return sysfs_emit(buf, "Mitigation: SMT disabled\n");
 
        return sysfs_emit(buf, "%s%s\n",
                          srso_strings[srso_mitigation],