News: 0001541876

  ARM Give a man a fire and he's warm for a day, but set fire to him and he's warm for the rest of his life (Terry Pratchett, Jingo)

Linux Patch Queued To Report Outdated Intel CPU Microcode As A Vulnerability

([Intel] 65 Minutes Ago Old Microcode As Security Vulnerability)


Last year a patch was raised for the Linux kernel that would [1]report outdated CPU microcode versions as a security vulnerability . With Intel routinely issuing new CPU microcode updates for security vulnerabilities and addressing other functional issues, the Linux kernel would begin warning users when recognizing that outdated CPU microcode is deployed for a given processor. That patch has now been queued into a tip/tip.git branch and thus looking like it will be submitted for the upcoming Linux 6.16 kernel cycle.

Since that original patch proposal was made last year, there's been perfect examples with [2]new CPU microcode in November for two security advisories and in February were [3]CPU microcode updates for five new security issues . That's just the past few months and if you've been a longtime reader, you're well aware of the CPU security issues that have come about for all vendors in recent years and are commonly seeing mitigations applied via microcode updates.

Queued this afternoon into the [4]tip/tip.git's x86/microcode branch is the patch for reporting outdated Intel CPU microcode versions to users.

Due to the likelihood that updated microcode contains security fixes and/or functionality issues resolved, when a CPU is detected as running outdated microcode it will be reported via /sys/devices/system/cpu/vulnerabilities/old_microcode . This is in the same sysfs directory where other CPU security vulnerabilities are reported and thus easy for collection. Ensuring you are on the latest CPU microcode is also important when debugging Linux kernel issues.

Besides reporting the old microcode issue via sysfs, recognizing outdated CPU microcode will also taint the running Linux kernel via the "TAINT_CPU_OUT_OF_SPEC" flag.

[5]

This recognizing of outdated Intel CPU microcode versions isn't trivial and relies on a static list of different CPU microcode versions for each CPU family / model / steppings. Thus with time this list will need to be updated and maintained by Intel engineers to properly reflect the latest microcode versions released.

Now that [6]this patch is queued via a tip/tip.git x86 branch, this will more than likely be submitted for the Linux 6.16 merge window in just over one month, barring any last minute objections from being raised with this reporting.



[1] https://www.phoronix.com/news/Linux-Intel-Old-Microcode-Vuln

[2] https://www.phoronix.com/news/Intel-November-2024-CPU-Micro

[3] https://www.phoronix.com/news/Intel-Microcode-20250211

[4] https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/log/?h=x86/microcode

[5] https://www.phoronix.com/image-viewer.php?id=2025&image=intel_cpus_lrg

[6] https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/commit/?h=x86/microcode&id=377781ebaa7c35ab3e91af29074d5f39100372f2



phoronix

Once upon a time, when I was training to be a mathematician, a group of
us bright young students taking number theory discovered the names of the
smaller prime numbers.

2: The Odd Prime --
It's the only even prime, therefore is odd. QED.
3: The True Prime --
Lewis Carroll: "If I tell you 3 times, it's true."
31: The Arbitrary Prime --
Determined by unanimous unvote. We needed an arbitrary prime in
case the prof asked for one, and so had an election. 91 received
the most votes (well, it *looks* prime) and 3+4i the next most.
However, 31 was the only candidate to receive none at all.
41: The Female Prime --
The polynomial X**2 - X + 41 is
prime for integer values from 1 to 40.
43: The Male Prime - they form a prime pair.

Since the composite numbers are formed from primes, their qualities
are derived from those primes. So, for instance, the number 6 is "odd
but true", while the powers of 2 are all extremely odd numbers.