Re: [PATCH v7 107/120] x86/cpuid: Parse leaves backing X86_FEATURE words

"Ahmed S. Darwish" <[email protected]> Fri, 12 Jun 2026 22:22:29 +0200
Newsgroups dev.linux.lists.x86-cpuid,org.kernel.vger.linux-kernel
Message-ID <aixqhV5T3Crcu5UA@lx-t490>
On Tue, 02 Jun 2026, Maciej Wieczor-Retman wrote:
>
> I think I found one mismatch using your lovely debugfs features :)
>

Haha, thanks.

> Specifically seems that CPU0 mismatches on EBX in leaf 0xD, subleaf 1:
>
> 	Leaf 0x0000000d, subleaf 1:
> 	    cached:    EAX=0x0000000f   *EBX=0x00000240    ECX=0x0000dd00    EDX=0x00000000
> 	    actual:    EAX=0x0000000f    EBX=0x000006a0    ECX=0x0000dd00    EDX=0x00000000
>
> EBX reports 'the size in bytes of the xsave area containing all states enabled
> by XCR0 | IA32_XSS'. Because all the other CPUs are fine (no mismatch) it looks
> like boot cpu didn't get updated after the xsave area size was updated. From
> some digging around I believe the update gets done in
> get_xsave_compacted_size() (MSR_IA32_XSS is updated) Going back up the
> call chain I arrived at all the fpu init code. I have no idea if this is the
> right way to fix it but the below snippet does eliminate the mismatch:
>

CPUID(0xd).EBX is not used by any converted call site.  So, IMHO this is a
very minor issue now.

Let's please re-discuss this after things are merged to -tip.  By that
time, you you can submit a patch and we can discuss it there.

Thanks!
Ahmed