]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
x86/msr: Add CPU_OUT_OF_SPEC taint name to "unrecognized" pr_warn(msg)
authorMarc Herbert <marc.herbert@linux.intel.com>
Mon, 3 Nov 2025 03:08:11 +0000 (03:08 +0000)
committerBorislav Petkov (AMD) <bp@alien8.de>
Wed, 5 Nov 2025 12:14:42 +0000 (13:14 +0100)
While restricting access,

  a7e1f67ed29f ("x86/msr: Filter MSR writes")

also added warning and started tainting the kernel.

But the warning message never mentioned tainting. Moreover, this uses the
"CPU_OUT_OF_SPEC" flag which is not clearly related to MSRs: that flag is
overloaded by several, fairly different situations, including some much
scarier ones.

So, without an expert around (thank you Dave Hansen), it would have been
practically impossible to root cause the tainting from just the log file at
hand. So it would be prudent to explicitly mention in the logs when the
tainting happens so that debugging crashes can be made easier.

Fix this by simply appending the CPU_OUT_OF_SPEC flag to the warning message.

This readability issue happened when staring at logs involving the Intel
Memory Latency Checker (among many other things going on in that log). The MLC
disables hardware prefetch.

  [ bp: Massage and extend commit message. ]

Signed-off-by: Marc Herbert <marc.herbert@linux.intel.com>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Link: https://lore.kernel.org/r/20251101-tainted-msr-v1-1-e00658ba04d4@linux.intel.com
arch/x86/kernel/msr.c

index e17c16c54a37b9e9d6c1ebffc6f48275707051b0..4469c784eaa0cfbe05bce7285186935d783961c3 100644 (file)
@@ -98,7 +98,7 @@ static int filter_write(u32 reg)
        if (!__ratelimit(&fw_rs))
                return 0;
 
-       pr_warn("Write to unrecognized MSR 0x%x by %s (pid: %d).\n",
+       pr_warn("Write to unrecognized MSR 0x%x by %s (pid: %d), tainting CPU_OUT_OF_SPEC.\n",
                reg, current->comm, current->pid);
        pr_warn("See https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/about for details.\n");