[ANNOUNCE] x86-cpuid-db: Release v3.0
"Ahmed S. Darwish" <[email protected]> Fri, 27 Mar 2026 04:05:50 +0100
| Newsgroups | dev.linux.lists.x86-cpuid,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <acX0Drk_6qD97nbq@lx-t490> |
Hi, I'm happy to announce release 3.0 of the x86-cpuid-db project: https://gitlab.com/x86-cpuid.org/x86-cpuid-db https://gitlab.com/x86-cpuid.org/x86-cpuid-db/-/releases/v3.0 Changelog v3.0 -------------- Introduce the Linux-defined synthetic CPUID leaves 0x4c780001 and 0x4c780002. The range ID prefix 0x4c78 is for Linux in its shorthand ASCII form "Lx", where Linux becomes a virtual vendor akin to hardware vendors like AMD or Intel. In these leaves, provide a 1:1 bitfield mapping for what Linux defines in its synthetic X86_FEATURE words at <asm/cpufeatures.h>. Designate leaf 0x4c780001 for feature words in a linear order; i.e., subleaf 0 registers EAX to EDX, then subleaf 1 registers, and so on. Similarly, designate leaf 0x4c780001 for the X86_BUG words. Here is the synthetic leaves bitfield listing: https://gitlab.com/x86-cpuid.org/x86-cpuid-db/-/blob/v3.0/db/xml/leaf_4c780001.xml https://gitlab.com/x86-cpuid.org/x86-cpuid-db/-/blob/v3.0/db/xml/leaf_4c780002.xml With that, the Linux kernel x86 feature query code can have zero special cases. The synthetic CPUID leaves and X86_FEATURE words are collected, parsed, modified, and queried just like their hardware-backed counterparts. Update the CPUID database: - Leaf 0x23: Introduce subleaf 2, Auto Counter Reload (ACR) - Leaf 0x23: Introduce subleaf 4/5, PEBS capabilities and counters - Leaf 0x1c: Return LBR depth as a bitmask instead of individual bits - Leaf 0x0a: Define more descriptive PMU bitfield names Thanks to Dave Hansen (Intel), also add the bits: - Leaf 0x0a: Various missing PMU events - Leaf 0x06: Missing IA32_HWP_CTL flag - Leaf 0x0f: Missing non-CPU (IO) Intel RDT bits Release coverage ---------------- CPUID leaves: 64 leaves CPUID bitfields: 1104 entries Linux feature flags: 465 entries Xen feature flags: 198 entries Artifacts --------- The generated CSV and C header files can be quickly checked in full from the release artifacts at: https://gitlab.com/x86-cpuid.org/x86-cpuid-db/-/releases/v3.0 Thanks! Ahmed