Commit 1dbb6b14 authored by David Kaplan's avatar David Kaplan Committed by Borislav Petkov (AMD)
Browse files

x86/bugs: Fix handling when SRSO mitigation is disabled



When the SRSO mitigation is disabled, either via mitigations=off or
spec_rstack_overflow=off, the warning about the lack of IBPB-enhancing
microcode is printed anyway.

This is unnecessary since the user has turned off the mitigation.

  [ bp: Massage, drop SBPB rationale as it doesn't matter because when
    mitigations are disabled x86_pred_cmd is not being used anyway. ]

Signed-off-by: default avatarDavid Kaplan <david.kaplan@amd.com>
Signed-off-by: default avatarBorislav Petkov (AMD) <bp@alien8.de>
Acked-by: default avatarJosh Poimboeuf <jpoimboe@kernel.org>
Link: https://lore.kernel.org/r/20240904150711.193022-1-david.kaplan@amd.com
parent 23e12b54
Loading
Loading
Loading
Loading
+5 −9
Original line number Diff line number Diff line
@@ -2557,10 +2557,9 @@ static void __init srso_select_mitigation(void)
{
	bool has_microcode = boot_cpu_has(X86_FEATURE_IBPB_BRTYPE);

	if (cpu_mitigations_off())
		return;

	if (!boot_cpu_has_bug(X86_BUG_SRSO)) {
	if (!boot_cpu_has_bug(X86_BUG_SRSO) ||
	    cpu_mitigations_off() ||
	    srso_cmd == SRSO_CMD_OFF) {
		if (boot_cpu_has(X86_FEATURE_SBPB))
			x86_pred_cmd = PRED_CMD_SBPB;
		return;
@@ -2591,11 +2590,6 @@ static void __init srso_select_mitigation(void)
	}

	switch (srso_cmd) {
	case SRSO_CMD_OFF:
		if (boot_cpu_has(X86_FEATURE_SBPB))
			x86_pred_cmd = PRED_CMD_SBPB;
		return;

	case SRSO_CMD_MICROCODE:
		if (has_microcode) {
			srso_mitigation = SRSO_MITIGATION_MICROCODE;
@@ -2649,6 +2643,8 @@ static void __init srso_select_mitigation(void)
			pr_err("WARNING: kernel not compiled with MITIGATION_SRSO.\n");
                }
		break;
	default:
		break;
	}

out: