[PATCH v4 0/4] Add and use get_cpu_cacheinfo_level()

From: Tony Luck
Date: Sun Jun 09 2024 - 20:39:50 EST


This helper function came up in discussion of the resctrl patches
for Sub-NUMA Cluster (SNC) support. Reinette pointed out[1] that there
are already two places where it would clean things up by avoiding
open coding. The SNC patches will add two additional call sites.

So rather than have this jammed up as part of the SNC series, I'm
posting it as a simple standalone cleanup.

Signed-off-by: Tony Luck <tony.luck@xxxxxxxxx>

[1] https://lore.kernel.org/all/050c64b3-20b3-4db6-b782-f5124ebaab31@xxxxxxxxx/

---
Changes since v3:
Link: https://lore.kernel.org/all/20240606164047.318378-1-tony.luck@xxxxxxxxx/

Addition of lockdep_assert_cpus_held() in v3 led to #include hell
because <linux/cacheinfo.h> needed <linux/cpu.h>

Patch 1 resolves this hell by cut-and-pasting all the CPU hotplug
defintions out of cpu.h and into a new file cpuhplock.h.

Patch 2 brings the pasted code up to current coding standards

Patch 3 is the previous patch 1, but adds <linux/cpuhplock.h> instead
of <linux/cpu.h> to <linux/cacheinfo.h>

Patch 4 is the previous patch 2, unchanged.

Tony Luck (4):
cpu: Move CPU hotplug function declarations into their own header
cpu: Drop "extern" from function declarations in cpuhplock.h
cacheinfo: Add function to get cacheinfo for a given (cpu, cachelevel)
x86/resctrl: Replace open code cacheinfo searches

include/linux/cacheinfo.h | 25 +++++++++---
include/linux/cpu.h | 33 +---------------
include/linux/cpuhplock.h | 47 +++++++++++++++++++++++
arch/x86/kernel/cpu/resctrl/pseudo_lock.c | 17 +++-----
arch/x86/kernel/cpu/resctrl/rdtgroup.c | 14 +++----
5 files changed, 79 insertions(+), 57 deletions(-)
create mode 100644 include/linux/cpuhplock.h


base-commit: 83a7eefedc9b56fe7bfeff13b6c7356688ffa670
--
2.45.0