[PATCH v6 60/90] perf/x86: Remove custom CPUID(0xa) types

From: Ahmed S. Darwish

Date: Thu Mar 26 2026 - 22:39:29 EST


All CPUID(0xa) sites have been transformed from direct CPUID queries to the
CPUID parser APIs.

Pure users of perf's custom CPUID(0xa) types have also been converted to
the auto generated x86-cpuid-db data types.

Remove the now-unused CPUID(0xa) types from <asm/perf_event.h>.

Signed-off-by: Ahmed S. Darwish <darwi@xxxxxxxxxxxxx>
---
arch/x86/include/asm/perf_event.h | 38 -------------------------------
1 file changed, 38 deletions(-)

diff --git a/arch/x86/include/asm/perf_event.h b/arch/x86/include/asm/perf_event.h
index ff5acb8b199b..23caaba1e104 100644
--- a/arch/x86/include/asm/perf_event.h
+++ b/arch/x86/include/asm/perf_event.h
@@ -157,44 +157,6 @@
/* Steal the highest bit of pebs_data_cfg for SW usage */
#define PEBS_UPDATE_DS_SW BIT_ULL(63)

-/*
- * Intel "Architectural Performance Monitoring" CPUID
- * detection/enumeration details:
- */
-union cpuid10_eax {
- struct {
- unsigned int version_id:8;
- unsigned int num_counters:8;
- unsigned int bit_width:8;
- unsigned int mask_length:8;
- } split;
- unsigned int full;
-};
-
-union cpuid10_ebx {
- struct {
- unsigned int no_unhalted_core_cycles:1;
- unsigned int no_instructions_retired:1;
- unsigned int no_unhalted_reference_cycles:1;
- unsigned int no_llc_reference:1;
- unsigned int no_llc_misses:1;
- unsigned int no_branch_instruction_retired:1;
- unsigned int no_branch_misses_retired:1;
- } split;
- unsigned int full;
-};
-
-union cpuid10_edx {
- struct {
- unsigned int num_counters_fixed:5;
- unsigned int bit_width_fixed:8;
- unsigned int reserved1:2;
- unsigned int anythread_deprecated:1;
- unsigned int reserved2:16;
- } split;
- unsigned int full;
-};
-
/*
* Intel "Architectural Performance Monitoring extension" CPUID
* detection/enumeration details:
--
2.53.0