|
|
Log in / Subscribe / Register

x86/cpu: Centralize and standardize CPUID leaf naming

From:  Dave Hansen <dave.hansen-AT-linux.intel.com>
To:  linux-kernel-AT-vger.kernel.org
Subject:  [PATCH 00/11] x86/cpu: Centralize and standardize CPUID leaf naming
Date:  Wed, 20 Nov 2024 11:53:27 -0800
Message-ID:  <20241120195327.26E06A69@davehans-spike.ostc.intel.com>
Cc:  x86-AT-kernel.org,tglx-AT-linutronix.de,bp-AT-alien8.de,rafael-AT-kernel.org,lenb-AT-kernel.org,dave.jiang-AT-intel.com,irenic.rajneesh-AT-gmail.com,david.e.box-AT-intel.com,Dave Hansen <dave.hansen-AT-linux.intel.com>
Archive-link:  Article

I noticed that the MWAIT code was rather haphazard in how it deals
with CPUID leaf levels.  As a result, there were a ton of unnecessary
checks for ->cpuid_level.  It is truly the worst offender because
there's arch/x86, intel_idle and ACPI that want to poke at it.

Move several of the leaf definitions to one place (cpuid.h).  Use
the definitions to get rid of magic numbers.  Simplify the code
when the CPUID feature level dependencies can be used.  Lastly,
change all the leaf names to be consistent.

This does not get *ALL* the leaves.  The topology and cache ones
are left along for now, but they can also be converted over.

It's obviously right in the middle of the merge window, so no
rush on looking at this.  I just wanted to get it into everyone's
review queues.  Barring any big issues I'm planning to apply this
to one of the tip branches after -rc1 drops.

 arch/x86/events/intel/pt.c            |    5 +++--
 arch/x86/events/intel/pt.h            |    3 ---
 arch/x86/include/asm/cpuid.h          |    7 +++++++
 arch/x86/include/asm/fpu/xstate.h     |    4 ----
 arch/x86/include/asm/mwait.h          |    1 -
 arch/x86/kernel/acpi/cstate.c         |    5 +++--
 arch/x86/kernel/cpu/common.c          |    7 ++++---
 arch/x86/kernel/fpu/xstate.c          |   26 +++++++++++---------------
 arch/x86/kernel/hpet.c                |    6 ++----
 arch/x86/kernel/process.c             |    3 ++-
 arch/x86/kernel/smpboot.c             |    5 ++---
 arch/x86/kernel/tsc.c                 |   23 +++++++++++------------
 arch/x86/xen/enlighten_pv.c           |    5 +++--
 drivers/acpi/acpi_pad.c               |    5 ++---
 drivers/dma/ioat/dca.c                |    8 +++++---
 drivers/idle/intel_idle.c             |    6 ++----
 drivers/platform/x86/intel/pmc/core.c |    7 ++++---
 17 files changed, 61 insertions(+), 65 deletions(-)




Copyright © 2024, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds