[GIT PULL] perf events changes for v6.7

From: Ingo Molnar
Date: Sat Oct 28 2023 - 07:54:11 EST



Linus,

Please pull the latest perf/core git tree from:

git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git perf-core-2023-10-28

# HEAD: 744940f1921c8feb90e3c4bcc1e153fdd6e10fe2 perf/x86/amd/uncore: Pass through error code for initialization failures, instead of -ENODEV

Performance events changes for v6.7 are:

- Add AMD Unified Memory Controller (UMC) events introduced with Zen 4
- Simplify & clean up the uncore management code
- Fall back from RDPMC to RDMSR on certain uncore PMUs
- Improve per-package and cstate event reading
- Extend the Intel ref-cycles event to GP counters
- Fix Intel MTL event constraints
- Improve the Intel hybrid CPU handling code
- Micro-optimize the RAPL code
- Optimize perf_cgroup_switch()
- Improve large AUX area error handling

- Misc fixes and cleanups

Thanks,

Ingo

------------------>
Borislav Petkov (1):
x86/cpu: Fix the AMD Fam 17h, Fam 19h, Zen2 and Zen4 MSR enumerations

Dan Carpenter (1):
perf/x86/amd/uncore: Fix uninitialized return value in amd_uncore_init()

David Reaver (1):
perf/x86/rapl: Fix "Using plain integer as NULL pointer" Sparse warning

Kan Liang (8):
perf/x86/intel: Use the common uarch name for the shared functions
perf/x86/intel: Factor out the initialization code for SPR
perf/x86/intel: Factor out the initialization code for ADL e-core
perf/x86/intel: Apply the common initialization code for ADL
perf/x86/intel: Clean up the hybrid CPU type handling code
perf/x86/intel: Add common intel_pmu_init_hybrid()
perf/x86/intel: Fix broken fixed event constraints extension
perf/x86/intel: Extend the ref-cycles event to GP counters

Kees Cook (1):
perf/x86/rapl: Annotate 'struct rapl_pmus' with __counted_by

Lucy Mielke (1):
perf/x86/intel/pt: Fix kernel-doc comments

Peter Zijlstra (1):
perf: Optimize perf_cgroup_switch()

Sandipan Das (6):
perf/x86/amd/uncore: Refactor uncore management
perf/x86/amd/uncore: Move discovery and registration
perf/x86/amd/uncore: Use rdmsr if rdpmc is unavailable
perf/x86/amd/uncore: Add group exclusivity
perf/x86/amd/uncore: Add memory controller support
perf/x86/amd/uncore: Pass through error code for initialization failures, instead of -ENODEV

Shuai Xue (1):
perf/core: Bail out early if the request AUX area is out of bound

Tero Kristo (2):
perf/x86/cstate: Allow reading the package statistics from local CPU
perf/core: Allow reading package events from perf_event_read_local

Uros Bizjak (2):
perf/x86/rapl: Stop doing cpu_relax() in the local64_cmpxchg() loop in rapl_event_update()
perf/x86/rapl: Use local64_try_cmpxchg in rapl_event_update()

Xiu Jianfeng (1):
perf/core: Rename perf_proc_update_handler() -> perf_event_max_sample_rate_handler(), for readability


arch/x86/events/amd/uncore.c | 1116 ++++++++++++++++++++++++-------------
arch/x86/events/core.c | 6 +-
arch/x86/events/intel/core.c | 485 ++++++++--------
arch/x86/events/intel/cstate.c | 3 +
arch/x86/events/intel/ds.c | 4 +-
arch/x86/events/intel/pt.c | 8 +-
arch/x86/events/perf_event.h | 37 +-
arch/x86/events/rapl.c | 22 +-
arch/x86/include/asm/msr-index.h | 10 +-
arch/x86/include/asm/perf_event.h | 9 +
include/linux/perf_event.h | 3 +-
kernel/events/core.c | 145 ++---
kernel/events/ring_buffer.c | 6 +
kernel/sysctl.c | 2 +-
14 files changed, 1130 insertions(+), 726 deletions(-)