Re: Old microcode CPU matching issue - x86/microcode/intel: Refresh the revisions that determine old_microcode
From: Jon Kohler
Date: Thu Nov 20 2025 - 11:36:19 EST
> On Nov 14, 2025, at 3:34 PM, Dave Hansen <dave.hansen@xxxxxxxxx> wrote:
>
> On 10/22/25 10:53, Dave Hansen wrote:
>> I think this is a platform mismatch problem. The microcode file for
>> 06-8f-08 has two different versions for two different platforms:
>>
>> $ iucode-tool --list-all intel-ucode/06-8f-08
>> ...
>> sig 0x000806f8, pf_mask 0x10, 2025-04-08, rev 0x2c000401
>> ...
>> sig 0x000806f8, pf_mask 0x87, 2025-04-04, rev 0x2b000643
>>
>> Note the pf_mask and rev deltas here: ^^^^ ^^^^^^^^^^
>>
>> I guess we'll need to take those into consideration, both adding pf_mask to
>> the match list and actually matching on it.
>
> Jon,
>
> Here is a completely untested series that might fix your issue:
>
> https://urldefense.proofpoint.com/v2/url?u=https-3A__git.kernel.org_pub_scm_linux_kernel_git_daveh_devel.git_log_-3Fh-3Dold-2Ducode-2Dplatform&d=DwICaQ&c=s883GpUCOChKOHiocYtGcg&r=NGPRGGo37mQiSXgHKm5rCQ&m=4zPePvFxfJXfp66SgLg_V32bsZLtf6acUOdSXGiOs7nHYrGTY8wvYIsVMdQwGguK&s=RASYUF-4djrYzQOFmSzkZbzpoWsg_qsGHiQJMcLGVhw&e=
>
> It attempts to take IA32_PLATFORM_ID into account when considering
> old microcode.
Hey Dave - got a chance to give it a go, and this did not seem to solve
the issue, and in fact it made it kinda worse as I didn’t end up seeing
the microcode getting patched up at all now.
On 6.18 rc6 with a bit of debug logging added, still seeing the same
[ 0.000000] x86/CPU: microcode 0x721421856 is older than minimum 0x721421881
[ 0.000000] x86/CPU: MATCH LIST DATA: family 0x6, model 0x8f, steppings 0x100
[ 0.000000] x86/CPU: BOOT_CPU_DATA: family 0x6, model 0x8f, stepping 0x8
[ 0.000000] x86/CPU: Running old microcode
[ 3.404176] microcode: Current revision: 0x2b000620 <<<<< I do have 0x2b000643 on the system, but it didn’t give me a notice that it updated early now
This was on this proc:
smpboot: CPU0: Intel(R) Xeon(R) Gold 5416S (family: 0x6, model: 0x8f, stepping: 0x8)
Jon