Merge tag 'perf-core-2025-01-20' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull performance events updates from Ingo Molnar: "Seqlock optimizations that arose in a perf context and were merged into the perf tree: - seqlock: Add raw_seqcount_try_begin (Suren Baghdasaryan) - mm: Convert mm_lock_seq to a proper seqcount (Suren Baghdasaryan) - mm: Introduce mmap_lock_speculate_{try_begin|retry} (Suren Baghdasaryan) - mm/gup: Use raw_seqcount_try_begin() (Peter Zijlstra) Core perf enhancements: - Reduce 'struct page' footprint of perf by mapping pages in advance (Lorenzo Stoakes) - Save raw sample data conditionally based on sample type (Yabin Cui) - Reduce sampling overhead by checking sample_type in perf_sample_save_callchain() and perf_sample_save_brstack() (Yabin Cui) - Export perf_exclude_event() (Namhyung Kim) Uprobes scalability enhancements: (Andrii Nakryiko) - Simplify find_active_uprobe_rcu() VMA checks - Add speculative lockless VMA-to-inode-to-uprobe resolution - Simplify session consumer tracking - Decouple return_instance list traversal and freeing - Ensure return_instance is detached from the list before freeing - Reuse return_instances between multiple uretprobes within task - Guard against kmemdup() failing in dup_return_instance() AMD core PMU driver enhancements: - Relax privilege filter restriction on AMD IBS (Namhyung Kim) AMD RAPL energy counters support: (Dhananjay Ugwekar) - Introduce topology_logical_core_id() (K Prateek Nayak) - Remove the unused get_rapl_pmu_cpumask() function - Remove the cpu_to_rapl_pmu() function - Rename rapl_pmu variables - Make rapl_model struct global - Add arguments to the init and cleanup functions - Modify the generic variable names to *_pkg* - Remove the global variable rapl_msrs - Move the cntr_mask to rapl_pmus struct - Add core energy counter support for AMD CPUs Intel core PMU driver enhancements: - Support RDPMC 'metrics clear mode' feature (Kan Liang) - Clarify adaptive PEBS processing (Kan Liang) - Factor out functions for PEBS records processing (Kan Liang) - Simplify the PEBS records processing for adaptive PEBS (Kan Liang) Intel uncore driver enhancements: (Kan Liang) - Convert buggy pmu->func_id use to pmu->registered - Support more units on Granite Rapids" * tag 'perf-core-2025-01-20' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (33 commits) perf: map pages in advance perf/x86/intel/uncore: Support more units on Granite Rapids perf/x86/intel/uncore: Clean up func_id perf/x86/intel: Support RDPMC metrics clear mode uprobes: Guard against kmemdup() failing in dup_return_instance() perf/x86: Relax privilege filter restriction on AMD IBS perf/core: Export perf_exclude_event() uprobes: Reuse return_instances between multiple uretprobes within task uprobes: Ensure return_instance is detached from the list before freeing uprobes: Decouple return_instance list traversal and freeing uprobes: Simplify session consumer tracking uprobes: add speculative lockless VMA-to-inode-to-uprobe resolution uprobes: simplify find_active_uprobe_rcu() VMA checks mm: introduce mmap_lock_speculate_{try_begin|retry} mm: convert mm_lock_seq to a proper seqcount mm/gup: Use raw_seqcount_try_begin() seqlock: add raw_seqcount_try_begin perf/x86/rapl: Add core energy counter support for AMD CPUs perf/x86/rapl: Move the cntr_mask to rapl_pmus struct perf/x86/rapl: Remove the global variable rapl_msrs ...
Showing
- Documentation/arch/x86/topology.rst 4 additions, 0 deletionsDocumentation/arch/x86/topology.rst
- arch/s390/kernel/perf_cpum_cf.c 1 addition, 1 deletionarch/s390/kernel/perf_cpum_cf.c
- arch/s390/kernel/perf_cpum_sf.c 3 additions, 3 deletionsarch/s390/kernel/perf_cpum_sf.c
- arch/s390/kernel/perf_pai_crypto.c 1 addition, 1 deletionarch/s390/kernel/perf_pai_crypto.c
- arch/s390/kernel/perf_pai_ext.c 1 addition, 1 deletionarch/s390/kernel/perf_pai_ext.c
- arch/x86/events/amd/core.c 1 addition, 2 deletionsarch/x86/events/amd/core.c
- arch/x86/events/amd/ibs.c 43 additions, 21 deletionsarch/x86/events/amd/ibs.c
- arch/x86/events/core.c 1 addition, 2 deletionsarch/x86/events/core.c
- arch/x86/events/intel/core.c 19 additions, 1 deletionarch/x86/events/intel/core.c
- arch/x86/events/intel/ds.c 116 additions, 82 deletionsarch/x86/events/intel/ds.c
- arch/x86/events/intel/uncore.c 7 additions, 13 deletionsarch/x86/events/intel/uncore.c
- arch/x86/events/intel/uncore.h 0 additions, 1 deletionarch/x86/events/intel/uncore.h
- arch/x86/events/intel/uncore_snb.c 1 addition, 1 deletionarch/x86/events/intel/uncore_snb.c
- arch/x86/events/intel/uncore_snbep.c 32 additions, 16 deletionsarch/x86/events/intel/uncore_snbep.c
- arch/x86/events/perf_event.h 1 addition, 0 deletionsarch/x86/events/perf_event.h
- arch/x86/events/rapl.c 265 additions, 150 deletionsarch/x86/events/rapl.c
- arch/x86/include/asm/perf_event.h 18 additions, 2 deletionsarch/x86/include/asm/perf_event.h
- arch/x86/include/asm/processor.h 1 addition, 0 deletionsarch/x86/include/asm/processor.h
- arch/x86/include/asm/topology.h 1 addition, 0 deletionsarch/x86/include/asm/topology.h
- arch/x86/kernel/cpu/debugfs.c 1 addition, 0 deletionsarch/x86/kernel/cpu/debugfs.c
Loading
Please register or sign in to comment