[PATCH] x86/its: Warn when microcode is old

From: Pawan Gupta
Date: Wed Jun 11 2025 - 20:08:51 EST


A microcode update is required for IBPB to be effective against ITS. On
Intel, X86_BUG_OLD_MICROCODE is set already when old microcode is detected.
In such a case system is tainted and a warning is issued.

Also warn that userspace could be vulnerable to ITS.

Suggested-by: Borislav Petkov <bp@xxxxxxxxx>
Signed-off-by: Pawan Gupta <pawan.kumar.gupta@xxxxxxxxxxxxxxx>
---
arch/x86/kernel/cpu/bugs.c | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/arch/x86/kernel/cpu/bugs.c b/arch/x86/kernel/cpu/bugs.c
index 7f94e6a5497d9a2d312a76095e48d6b364565777..7aa3ae00e6b4daa5e42217b66c50cd46d6bcc115 100644
--- a/arch/x86/kernel/cpu/bugs.c
+++ b/arch/x86/kernel/cpu/bugs.c
@@ -1427,6 +1427,10 @@ static void __init its_select_mitigation(void)
return;
}

+ /* For IBPB to be effective against ITS */
+ if (boot_cpu_has_bug(X86_BUG_OLD_MICROCODE))
+ pr_warn("Old microcode, userspace may be vulnerable to ITS\n");
+
if (its_mitigation == ITS_MITIGATION_RETPOLINE_STUFF &&
!IS_ENABLED(CONFIG_MITIGATION_CALL_DEPTH_TRACKING)) {
pr_err("RSB stuff mitigation not supported, using default\n");

---
base-commit: 19272b37aa4f83ca52bdf9c16d5d81bdd1354494
change-id: 20250611-its-warn-b292b10896e3