mirror-linux/tools/perf/util
Linus Torvalds 4d84667627 Performance events changes for v7.0:
x86 PMU driver updates:
 
  - Add support for the core PMU for Intel Diamond Rapids (DMR) CPUs.
    Compared to previous iterations of the Intel PMU code, there's
    been a lot of changes, which center around three main areas:
 
     - Introduce the OFF-MODULE RESPONSE (OMR) facility to
       replace the Off-Core Response (OCR) facility
 
     - New PEBS data source encoding layout
 
     - Support the new "RDPMC user disable" feature
 
    (Dapeng Mi)
 
  - Likewise, a large series adds uncore PMU support for
    Intel Diamond Rapids (DMR) CPUs, which center around these
    four main areas:
 
     - DMR may have two Integrated I/O and Memory Hub (IMH) dies,
       separate from the compute tile (CBB) dies.  Each CBB and
       each IMH die has its own discovery domain.
 
     - Unlike prior CPUs that retrieve the global discovery table
       portal exclusively via PCI or MSR, DMR uses PCI for IMH PMON
       discovery and MSR for CBB PMON discovery.
 
     - DMR introduces several new PMON types: SCA, HAMVF, D2D_ULA,
       UBR, PCIE4, CRS, CPC, ITC, OTC, CMS, and PCIE6.
 
     - IIO free-running counters in DMR are MMIO-based, unlike SPR.
 
    (Zide Chen)
 
  - Also add support for Add missing PMON units for Intel Panther Lake,
    and support Nova Lake (NVL), which largely maps to Panther Lake.
    (Zide Chen)
 
  - KVM integration: Add support for mediated vPMUs (by Kan Liang
    and Sean Christopherson, with fixes and cleanups by Peter Zijlstra,
    Sandipan Das and Mingwei Zhang)
 
  - Add Intel cstate driver to support for Wildcat Lake (WCL)
    CPUs, which are a low-power variant of Panther Lake.
    (Zide Chen)
 
  - Add core, cstate and MSR PMU support for the Airmont NP Intel CPU
    (aka MaxLinear Lightning Mountain), which maps to the existing
    Airmont code. (Martin Schiller)
 
 Performance enhancements:
 
  - core: Speed up kexec shutdown by avoiding unnecessary
    cross CPU calls. (Jan H. Schönherr)
 
  - core: Fix slow perf_event_task_exit() with LBR callstacks
    (Namhyung Kim)
 
 User-space stack unwinding support:
 
  - Various cleanups and refactorings in preparation to generalize
    the unwinding code for other architectures. (Jens Remus)
 
 Uprobes updates:
 
  - Transition from kmap_atomic to kmap_local_page (Keke Ming)
 
  - Fix incorrect lockdep condition in filter_chain() (Breno Leitao)
 
  - Fix XOL allocation failure for 32-bit tasks (Oleg Nesterov)
 
 Misc fixes and cleanups:
 
  - s390: Remove kvm_types.h from Kbuild (Randy Dunlap)
 
  - x86/intel/uncore: Convert comma to semicolon (Chen Ni)
 
  - x86/uncore: Clean up const mismatch (Greg Kroah-Hartman)
 
  - x86/ibs: Fix typo in dc_l2tlb_miss comment (Xiang-Bin Shi)
 
 Signed-off-by: Ingo Molnar <mingo@kernel.org>
 -----BEGIN PGP SIGNATURE-----
 
 iQJFBAABCgAvFiEEBpT5eoXrXCwVQwEKEnMQ0APhK1gFAmmJhTURHG1pbmdvQGtl
 cm5lbC5vcmcACgkQEnMQ0APhK1i/qw/9F/sjMqbxH8d3kPXB8wk2eUuSkynQ2aNw
 Zec9qtfCC5N1U9b2D7ywGJRscTmWYnX/3BKTyzFuyA6SDz6buAgDDIGPlHi+9Fww
 +RUUS3lQ7N3pVWZ4Ifu3kbh3Vz4lkQuOXhfcjiyIMS6QIxfrcSLFoKHK+2V6PeU+
 x0k+THHz/Ymg+DIpqSjqil1yrKaUmU9xRrbnyy6zJB1duREQrkYBhIWL1+bcd7SA
 89RVAGXQ+sWzVQMPaKrMkZj6GavOCB7zseigiiwjBRLznukS2OulDDe8zR6pCJZp
 wbdc7TR/nCm+QtNfkHlOmTQvsPAXiXNyXe5Vi8aFjGc0uMGhHaeiL9ah/bwsKA5m
 Bm5Y7oVSmBlCJbcr/CTrGYkb+WwvLIgPCwVkn4FYPlsWv+U92qTOx9q7qKmIDFaj
 1oUXCwoHbYrYnoZqZqPp2h689m0Lh/lsGhy0QRt8aGnKu0SDjMaqRGbYWH0UI0kA
 aDnZstVHG76RnVi0143q8HcvvjNZb82NL0cS749tY/YcwH4kUEGj2XuSK2Ar887T
 H0oDJHXijMlGXWqO5bK3WMoCQajR7nRyqBo7/rKYj20OjXmwoXS3vel77/s8WFo2
 fUUC469MacDzyxdBNutnkJvvcvsUio3r4MWFsEEWQk2nUE58PtN8YM8j/FdNYpql
 zAZ4Jx/A0RM=
 =4SRB
 -----END PGP SIGNATURE-----

Merge tag 'perf-core-2026-02-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull performance event updates from Ingo Molnar:
 "x86 PMU driver updates:

   - Add support for the core PMU for Intel Diamond Rapids (DMR) CPUs
     (Dapeng Mi)

     Compared to previous iterations of the Intel PMU code, there's been
     a lot of changes, which center around three main areas:

      - Introduce the OFF-MODULE RESPONSE (OMR) facility to replace the
        Off-Core Response (OCR) facility

      - New PEBS data source encoding layout

      - Support the new "RDPMC user disable" feature

   - Likewise, a large series adds uncore PMU support for Intel Diamond
     Rapids (DMR) CPUs (Zide Chen)

     This centers around these four main areas:

      - DMR may have two Integrated I/O and Memory Hub (IMH) dies,
        separate from the compute tile (CBB) dies. Each CBB and each IMH
        die has its own discovery domain.

      - Unlike prior CPUs that retrieve the global discovery table
        portal exclusively via PCI or MSR, DMR uses PCI for IMH PMON
        discovery and MSR for CBB PMON discovery.

      - DMR introduces several new PMON types: SCA, HAMVF, D2D_ULA, UBR,
        PCIE4, CRS, CPC, ITC, OTC, CMS, and PCIE6.

      - IIO free-running counters in DMR are MMIO-based, unlike SPR.

   - Also add support for Add missing PMON units for Intel Panther Lake,
     and support Nova Lake (NVL), which largely maps to Panther Lake.
     (Zide Chen)

   - KVM integration: Add support for mediated vPMUs (by Kan Liang and
     Sean Christopherson, with fixes and cleanups by Peter Zijlstra,
     Sandipan Das and Mingwei Zhang)

   - Add Intel cstate driver to support for Wildcat Lake (WCL) CPUs,
     which are a low-power variant of Panther Lake (Zide Chen)

   - Add core, cstate and MSR PMU support for the Airmont NP Intel CPU
     (aka MaxLinear Lightning Mountain), which maps to the existing
     Airmont code (Martin Schiller)

  Performance enhancements:

   - Speed up kexec shutdown by avoiding unnecessary cross CPU calls
     (Jan H. Schönherr)

   - Fix slow perf_event_task_exit() with LBR callstacks (Namhyung Kim)

  User-space stack unwinding support:

   - Various cleanups and refactorings in preparation to generalize the
     unwinding code for other architectures (Jens Remus)

  Uprobes updates:

   - Transition from kmap_atomic to kmap_local_page (Keke Ming)

   - Fix incorrect lockdep condition in filter_chain() (Breno Leitao)

   - Fix XOL allocation failure for 32-bit tasks (Oleg Nesterov)

  Misc fixes and cleanups:

   - s390: Remove kvm_types.h from Kbuild (Randy Dunlap)

   - x86/intel/uncore: Convert comma to semicolon (Chen Ni)

   - x86/uncore: Clean up const mismatch (Greg Kroah-Hartman)

   - x86/ibs: Fix typo in dc_l2tlb_miss comment (Xiang-Bin Shi)"

* tag 'perf-core-2026-02-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (58 commits)
  s390: remove kvm_types.h from Kbuild
  uprobes: Fix incorrect lockdep condition in filter_chain()
  x86/ibs: Fix typo in dc_l2tlb_miss comment
  x86/uprobes: Fix XOL allocation failure for 32-bit tasks
  perf/x86/intel/uncore: Convert comma to semicolon
  perf/x86/intel: Add support for rdpmc user disable feature
  perf/x86: Use macros to replace magic numbers in attr_rdpmc
  perf/x86/intel: Add core PMU support for Novalake
  perf/x86/intel: Add support for PEBS memory auxiliary info field in NVL
  perf/x86/intel: Add core PMU support for DMR
  perf/x86/intel: Add support for PEBS memory auxiliary info field in DMR
  perf/x86/intel: Support the 4 new OMR MSRs introduced in DMR and NVL
  perf/core: Fix slow perf_event_task_exit() with LBR callstacks
  perf/core: Speed up kexec shutdown by avoiding unnecessary cross CPU calls
  uprobes: use kmap_local_page() for temporary page mappings
  arm/uprobes: use kmap_local_page() in arch_uprobe_copy_ixol()
  mips/uprobes: use kmap_local_page() in arch_uprobe_copy_ixol()
  arm64/uprobes: use kmap_local_page() in arch_uprobe_copy_ixol()
  riscv/uprobes: use kmap_local_page() in arch_uprobe_copy_ixol()
  perf/x86/intel/uncore: Add Nova Lake support
  ...
2026-02-10 12:00:46 -08:00
..
arm-spe-decoder perf arm_spe: Expose SIMD information in other operations 2025-11-18 20:31:30 -08:00
bpf_skel perf trace: Increase syscall handler map size to 1024 2025-10-31 12:29:44 -07:00
cs-etm-decoder perf build: Remove NO_AUXTRACE build option 2025-11-13 23:03:11 -08:00
hisi-ptt-decoder perf build: Remove NO_AUXTRACE build option 2025-11-13 23:03:11 -08:00
include kcfi: Rename CONFIG_CFI_CLANG to CONFIG_CFI 2025-09-24 14:29:14 -07:00
intel-pt-decoder perf build: Remove NO_AUXTRACE build option 2025-11-13 23:03:11 -08:00
libunwind perf unwind: Use perf_arch_reg_{ip|sp}() to substitute macros 2023-08-16 08:48:06 -03:00
perf-regs-arch perf util: Make util its own library 2024-06-26 11:07:42 -07:00
scripting-engines perf build: Disable thread safety analysis for perl header 2025-10-06 16:49:25 -03:00
Build perf build: Remove NO_AUXTRACE build option 2025-11-13 23:03:11 -08:00
PERF-VERSION-GEN
addr2line.c perf srcline: Fallback between addr2line implementations 2025-10-06 16:47:49 -03:00
addr2line.h perf srcline: Fallback between addr2line implementations 2025-10-06 16:47:49 -03:00
addr_location.c perf report: Add machine parallelism 2025-02-17 22:00:50 -08:00
addr_location.h perf report: Add latency output field 2025-02-18 14:04:32 -08:00
affinity.c perf test: Expand user space event reading (rdpmc) tests 2025-06-20 13:14:07 -07:00
affinity.h perf test: Expand user space event reading (rdpmc) tests 2025-06-20 13:14:07 -07:00
amd-sample-raw.c perf evlist: Change env variable to session 2025-07-25 10:37:56 -07:00
annotate-data.c perf auxtrace: Remove errno.h from auxtrace.h and fix transitive dependencies 2025-11-13 23:03:11 -08:00
annotate-data.h perf annotate: Save pointer offset in stack state 2025-10-21 06:02:49 -07:00
annotate.c perf annotate: Skip annotating data types to lea instructions 2025-10-21 06:02:49 -07:00
annotate.h perf annotate: fix a crash when annotate the same symbol with 's' and 'T' 2025-10-21 05:42:01 -07:00
archinsn.h
arm-spe.c perf arm-spe: Add NVIDIA Olympus to neoverse list 2025-12-23 10:15:50 -08:00
arm-spe.h perf arm_spe: Add "event_filter" entry in meta data 2025-09-19 12:14:28 -03:00
arm64-frame-pointer-unwind-support.c perf sample: Make user_regs and intr_regs optional 2025-02-12 20:06:11 -08:00
arm64-frame-pointer-unwind-support.h
auxtrace.c perf tool: Add the perf_tool argument to all callbacks 2025-11-07 13:25:05 -08:00
auxtrace.h perf auxtrace: Include sys/types.h for pid_t 2025-12-03 11:01:05 -08:00
block-info.c perf report: Display the branch counter histogram 2024-08-14 10:20:40 -03:00
block-info.h perf report: Display the branch counter histogram 2024-08-14 10:20:40 -03:00
block-range.c perf annotate: Move max_coverage from 'struct annotation' to 'struct annotated_branch' 2023-11-09 13:49:33 -03:00
block-range.h
bpf-event.c perf bpf-event: Use libbpf version rather than feature check 2025-10-03 16:49:51 -03:00
bpf-event.h perf record: collect BPF metadata from new programs 2025-06-20 14:48:49 -07:00
bpf-filter.c perf bpf: Move the LIBBPF_CURRENT_VERSION_GEQ macro to bpf-utils.h 2025-09-30 13:36:03 -03:00
bpf-filter.h perf auxtrace: Remove errno.h from auxtrace.h and fix transitive dependencies 2025-11-13 23:03:11 -08:00
bpf-filter.l perf bpf-filter: Fix a parsing error with comma 2025-03-24 17:29:58 -07:00
bpf-filter.y perf bpf-filter: Support filtering on cgroups 2024-08-28 18:21:49 -03:00
bpf-trace-summary.c perf auxtrace: Remove errno.h from auxtrace.h and fix transitive dependencies 2025-11-13 23:03:11 -08:00
bpf-utils.c perf bpf-utils: Harden get_bpf_prog_info_linear 2025-09-02 14:55:32 -07:00
bpf-utils.h perf bpf-event: Use libbpf version rather than feature check 2025-10-03 16:49:51 -03:00
bpf_counter.c perf bpf_counter: Fix opening of "any"(-1) CPU events 2025-10-13 01:58:51 -07:00
bpf_counter.h perf bpf_counter: Move header declarations into C code 2025-10-01 15:27:02 -03:00
bpf_counter_cgroup.c perf auxtrace: Remove errno.h from auxtrace.h and fix transitive dependencies 2025-11-13 23:03:11 -08:00
bpf_ftrace.c perf auxtrace: Remove errno.h from auxtrace.h and fix transitive dependencies 2025-11-13 23:03:11 -08:00
bpf_kwork.c perf kwork: Make perf_kwork_add_work a callback 2024-12-18 16:24:33 -03:00
bpf_kwork_top.c perf kwork: Make perf_kwork_add_work a callback 2024-12-18 16:24:33 -03:00
bpf_lock_contention.c perf lock contention: Load kernel map before lookup 2025-10-31 11:32:51 -07:00
bpf_map.c perf auxtrace: Remove errno.h from auxtrace.h and fix transitive dependencies 2025-11-13 23:03:11 -08:00
bpf_map.h
bpf_off_cpu.c perf bpf_counter: Move header declarations into C code 2025-10-01 15:27:02 -03:00
bpf_trace_augment.c perf trace: Split BPF skel code to util/bpf_trace_augment.c 2025-06-26 10:31:05 -07:00
branch.c perf session: Add accessor for session->header.env 2025-07-25 10:37:56 -07:00
branch.h perf script: Add not taken event for branch stack 2025-03-05 09:13:19 -08:00
btf.c perf btf: Make the sigtrap test helper to find a member by name widely available 2024-12-09 17:52:41 -03:00
btf.h perf btf: Make the sigtrap test helper to find a member by name widely available 2024-12-09 17:52:41 -03:00
build-id.c perf tools: Don't read build-ids from non-regular files 2025-11-26 10:13:38 -08:00
build-id.h perf build-id: Change sprintf functions to snprintf 2025-07-25 10:37:13 -07:00
cache.h
cacheline.c
cacheline.h
call-path.c
call-path.h
callchain.c perf tools: Merge deferred user callchains 2025-12-02 21:59:14 -08:00
callchain.h perf tools: Merge deferred user callchains 2025-12-02 21:59:14 -08:00
cap.c perf bpf-filter: Improve error messages 2025-06-09 11:18:17 -07:00
cap.h perf bpf-filter: Improve error messages 2025-06-09 11:18:17 -07:00
capstone.c perf dso: Clean up read_symbol() error handling 2025-10-06 16:35:28 -03:00
capstone.h perf capstone: Move capstone functionality into its own file 2025-10-02 15:36:59 -03:00
cgroup.c perf auxtrace: Remove errno.h from auxtrace.h and fix transitive dependencies 2025-11-13 23:03:11 -08:00
cgroup.h perf stat: Move metric list from config to evlist 2025-07-11 12:36:40 -07:00
clockid.c
clockid.h
cloexec.c
cloexec.h
color.c perf tools: Remove unused color_fwrite_lines 2024-10-10 23:38:33 -07:00
color.h perf util: Remove unused perf_color_default_config 2025-03-10 11:31:24 -07:00
color_config.c perf util: Remove unused perf_color_default_config 2025-03-10 11:31:24 -07:00
comm.c perf thread: Ensure comm_lock held for comm_list 2025-06-11 13:40:31 -07:00
comm.h
compress.h perf tools: Add LZMA decompression from FILE 2025-03-10 14:37:02 -07:00
config.c perf stat: Reduce scope of walltime_nsecs_stats 2025-11-17 18:43:09 -08:00
config.h perf util: Remove unused perf_config__refresh 2025-03-10 11:31:24 -07:00
copyfile.c
copyfile.h
counts.c
counts.h
cpu-set-sched.h
cpumap.c perf cpumap: Add "any" CPU handling to cpu_map__snprint_mask 2025-12-04 00:36:14 -08:00
cpumap.h perf cpumap: Remove refcnt from 'struct cpu_aggr_map' 2024-05-07 18:06:44 -03:00
cputopo.c libperf cpumap: Replace usage of perf_cpu_map__new(NULL) with perf_cpu_map__new_online_cpus() 2023-12-12 14:55:13 -03:00
cputopo.h
cs-etm-base.c
cs-etm.c perf sample: Fix the wrong format specifier 2025-11-16 23:12:19 -08:00
cs-etm.h perf: cs-etm: Create decoders based on the trace ID mappings 2024-08-29 15:55:24 -03:00
data-convert-bt.c perf session: Add accessor for session->header.env 2025-07-25 10:37:56 -07:00
data-convert-json.c perf session: Add accessor for session->header.env 2025-07-25 10:37:56 -07:00
data-convert.h
data.c perf util: Remove unused perf_data__update_dir 2025-03-10 11:31:24 -07:00
data.h perf util: Remove unused perf_data__update_dir 2025-03-10 11:31:24 -07:00
db-export.c perf script: perf script tests fails with segfault 2025-06-09 21:38:08 -07:00
db-export.h
debug.c perf machine: Explicitly pass in host perf_env 2025-07-25 10:37:57 -07:00
debug.h perf debug: Add function symbols to dump_stack 2025-06-25 10:59:19 -07:00
debuginfo.c perf tools: Don't read build-ids from non-regular files 2025-11-26 10:13:38 -08:00
debuginfo.h perf build: Rename HAVE_DWARF_SUPPORT to HAVE_LIBDW_SUPPORT 2024-10-18 10:17:40 -07:00
demangle-cxx.cpp
demangle-cxx.h perf symbol: Move demangling code out of symbol-elf.c 2025-05-28 19:02:58 -03:00
demangle-java.c
demangle-java.h
demangle-ocaml.c
demangle-ocaml.h
demangle-rust-v0.c perf demangle-rust: Add rustc-demangle C demangler 2025-05-09 17:00:05 -03:00
demangle-rust-v0.h perf demangle-rust: Add rustc-demangle C demangler 2025-05-09 17:00:05 -03:00
disasm.c perf disasm: Make ins__scnprintf() and ins__is_nop() static 2025-10-06 16:35:29 -03:00
disasm.h perf disasm: Remove unused evsel from 'struct annotate_args' 2025-10-06 16:47:51 -03:00
dlfilter.c perf sample: Remove arch notion of sample parsing 2025-07-25 10:37:58 -07:00
dlfilter.h
drm_pmu.c perf pmu: perf_cpu_map__new_int to avoid parsing a string 2025-11-17 18:43:08 -08:00
drm_pmu.h perf drm_pmu: Add a tool like PMU to expose DRM information 2025-06-25 11:12:35 -07:00
dso.c perf dso: Clean up read_symbol() error handling 2025-10-06 16:35:28 -03:00
dso.h perf dso: Move read_symbol() from llvm/capstone to dso 2025-10-06 16:35:25 -03:00
dsos.c perf tools: Don't read build-ids from non-regular files 2025-11-26 10:13:38 -08:00
dsos.h perf dso: Constify dso_id 2024-08-19 14:52:13 -03:00
dump-insn.c perf script: Minimize "not reaching sample" for '-F +brstackinsn' 2024-09-03 12:22:01 -03:00
dump-insn.h perf script: Minimize "not reaching sample" for '-F +brstackinsn' 2024-09-03 12:22:01 -03:00
dwarf-aux.c perf dwarf-aux: Fix __die_find_scope_cb() for namespaces 2025-09-19 12:14:30 -03:00
dwarf-aux.h perf dwarf-aux: Better variable collection for insn tracking 2025-09-19 12:14:30 -03:00
dwarf-regs-csky.c perf dwarf-regs: Move csky dwarf-regs out of arch 2024-11-09 08:39:13 -08:00
dwarf-regs-powerpc.c perf dwarf-regs: Move powerpc dwarf-regs out of arch 2024-11-09 08:39:13 -08:00
dwarf-regs-x86.c perf dwarf-regs: Move x86 dwarf-regs out of arch 2024-11-09 08:39:13 -08:00
dwarf-regs.c perf dwarf-regs: Remove get_arch_regstr code 2024-11-09 08:39:14 -08:00
env.c perf tools: Add helper x86__is_intel_cpu() 2025-10-02 15:31:14 -03:00
env.h perf tools: Add helper x86__is_intel_cpu() 2025-10-02 15:31:14 -03:00
event.c perf tools: Minimal DEFERRED_CALLCHAIN support 2025-12-02 16:13:32 -08:00
event.h perf script: Enable to present DTL entries 2025-10-01 11:22:05 -03:00
events_stats.h perf report: Add latency output field 2025-02-18 14:04:32 -08:00
evlist.c perf tools: Merge deferred user callchains 2025-12-02 21:59:14 -08:00
evlist.h perf tools: Merge deferred user callchains 2025-12-02 21:59:14 -08:00
evsel.c perf record: Add --call-graph fp,defer option for deferred callchains 2025-12-02 21:59:13 -08:00
evsel.h perf record: Add --call-graph fp,defer option for deferred callchains 2025-12-02 21:59:13 -08:00
evsel_config.h perf record: Add ratio-to-prev term 2025-10-03 16:49:51 -03:00
evsel_fprintf.c perf script: Display PERF_RECORD_CALLCHAIN_DEFERRED 2025-12-02 21:59:14 -08:00
evsel_fprintf.h
evswitch.c perf auxtrace: Remove errno.h from auxtrace.h and fix transitive dependencies 2025-11-13 23:03:11 -08:00
evswitch.h
expr.c perf tool_pmu: Make core_wide and target_cpu json events 2025-11-11 16:48:36 -08:00
expr.h perf jevents: Add a new expression builtin strcmp_cpuid_str() 2023-08-17 14:12:14 -03:00
expr.l perf expr: Allow NaN to be a valid number 2024-02-13 13:47:08 -08:00
expr.y perf expr: Make YYDEBUG dependent on doing a debug build 2023-09-12 17:46:50 -03:00
find-map.c
fncache.c perf fncache: Switch to using hashmap 2025-05-13 16:36:22 -03:00
fncache.h perf fncache: Switch to using hashmap 2025-05-13 16:36:22 -03:00
ftrace.h perf: ftrace: add graph tracer options args/retval/retval-hex/retaddr 2025-07-22 17:47:22 -07:00
genelf.c perf jitdump: Add sym/str-tables to build-ID generation 2025-12-02 16:06:57 -08:00
genelf.h perf build: Rename HAVE_DWARF_SUPPORT to HAVE_LIBDW_SUPPORT 2024-10-18 10:17:40 -07:00
genelf_debug.c
generate-cmdlist.sh perf tools: Remove dependency on libaudit 2025-01-10 10:59:42 -03:00
hashmap.c
hashmap.h perf tools: Fix possible compiler warnings in hashmap 2024-10-14 12:04:31 -07:00
header.c [GIT PULL] perf tools changes for v6.19 2025-12-07 07:07:02 -08:00
header.h perf tool: Add the perf_tool argument to all callbacks 2025-11-07 13:25:05 -08:00
help-unknown-cmd.c perf help: Lower levenshtein penality for deleting character 2024-03-21 13:54:40 -03:00
help-unknown-cmd.h
hisi-ptt.c perf tool: Constify tool pointers 2024-08-12 18:05:14 -03:00
hisi-ptt.h
hist.c perf hist: In init, ensure mem_info is put on error paths 2025-12-03 11:07:40 -08:00
hist.h perf annotate: Fix build with NO_SLANG=1 2025-10-21 05:36:02 -07:00
hwmon_pmu.c perf pmu: perf_cpu_map__new_int to avoid parsing a string 2025-11-17 18:43:08 -08:00
hwmon_pmu.h perf tools: Fix duplicated words in documentation and comments 2025-10-01 09:44:02 -03:00
intel-bts.c perf auxtrace: Add auxtrace_synth_id_range_start() helper 2025-10-25 17:44:57 -07:00
intel-bts.h
intel-pt.c perf auxtrace: Add auxtrace_synth_id_range_start() helper 2025-10-25 17:44:57 -07:00
intel-pt.h perf pmu: Lazily compute default config 2023-10-17 12:40:50 -07:00
intel-tpebs.c perf auxtrace: Remove errno.h from auxtrace.h and fix transitive dependencies 2025-11-13 23:03:11 -08:00
intel-tpebs.h perf stat: Add mean, min, max and last --tpebs-mode options 2025-04-25 12:31:36 -03:00
intlist.c
intlist.h
iostat.c
iostat.h
jit.h perf jit: Constify filename argument 2024-08-19 14:51:46 -03:00
jitdump.c perf jitdump: Fix missed dso__put 2025-12-03 11:07:46 -08:00
jitdump.h
kvm-stat.c perf kvm: Move functions used in util out of builtin 2024-12-18 16:24:32 -03:00
kvm-stat.h perf auxtrace: Remove errno.h from auxtrace.h and fix transitive dependencies 2025-11-13 23:03:11 -08:00
kwork.h perf kwork: Make perf_kwork_add_work a callback 2024-12-18 16:24:33 -03:00
levenshtein.c
levenshtein.h
libbfd.c perf symbol: Fix ENOENT case for filename__read_build_id 2025-12-17 07:30:51 -08:00
libbfd.h perf tools: Don't read build-ids from non-regular files 2025-11-26 10:13:38 -08:00
llvm-c-helpers.cpp perf llvm-add2line: Remove unused symbol_conf.h include 2025-01-08 17:38:32 -03:00
llvm-c-helpers.h perf annotate: LLVM-based disassembler 2024-09-03 10:39:20 -03:00
llvm.c perf srcline: Fallback between addr2line implementations 2025-10-06 16:47:49 -03:00
llvm.h perf srcline: Fallback between addr2line implementations 2025-10-06 16:47:49 -03:00
lock-contention.c perf lock: Move common lock contention code to new file 2024-12-18 16:24:33 -03:00
lock-contention.h perf lock contention: Add -J/--inject-delay option 2025-05-09 14:32:15 -03:00
lzma.c perf util: Fix compression checks returning -1 as bool 2025-09-12 15:41:57 -03:00
machine.c perf tools: Minimal DEFERRED_CALLCHAIN support 2025-12-02 16:13:32 -08:00
machine.h perf machine: Explicitly pass in host perf_env 2025-07-25 10:37:57 -07:00
map.c perf map: Constify objdump offset/address conversion APIs 2025-10-02 15:36:13 -03:00
map.h perf map: Constify objdump offset/address conversion APIs 2025-10-02 15:36:13 -03:00
map_symbol.c perf hist: Correct hist_entry->mem_info refcounts 2024-08-01 18:55:55 -03:00
map_symbol.h perf hist: Correct hist_entry->mem_info refcounts 2024-08-01 18:55:55 -03:00
maps.c perf maps: Avoid RC_CHK use after free 2025-11-19 16:20:15 -08:00
maps.h perf maps: Locking tidy up of nr_maps 2024-02-12 12:35:41 -08:00
mem-events.c perf mem-events: Don't leak online CPU map 2025-12-03 11:07:46 -08:00
mem-events.h perf mem: Add 'dtlb' output field 2025-05-02 15:36:14 -03:00
mem-info.c perf hist: Correct hist_entry->mem_info refcounts 2024-08-01 18:55:55 -03:00
mem-info.h perf hist: Correct hist_entry->mem_info refcounts 2024-08-01 18:55:55 -03:00
mem2node.c
mem2node.h
memswap.c
memswap.h
metricgroup.c perf jevents: Add metric DefaultShowEvents 2025-11-11 16:48:35 -08:00
metricgroup.h perf metricgroup: Update comment on location of metric_event list 2025-11-03 20:57:21 -08:00
mmap.c perf auxtrace: Remove errno.h from auxtrace.h and fix transitive dependencies 2025-11-13 23:03:11 -08:00
mmap.h perf tools: Deadcode removal 2025-02-10 11:46:02 -08:00
mutex.c perf libbfd: Ensure libbfd is initialized prior to use 2025-11-13 17:55:19 -03:00
mutex.h perf libbfd: Ensure libbfd is initialized prior to use 2025-11-13 17:55:19 -03:00
namespaces.c perf namespaces: Avoid get_current_dir_name dependency 2025-10-03 15:28:04 -03:00
namespaces.h perf namespaces: Fixup the nsinfo__in_pidns() return type, its bool 2025-01-08 17:31:06 -03:00
off_cpu.h perf record --off-cpu: Add --off-cpu-thresh option 2025-05-05 21:51:54 -03:00
ordered-events.c
ordered-events.h
parse-branch-options.c perf tools: Add branch counter knob 2023-11-09 13:47:50 -03:00
parse-branch-options.h
parse-events.c perf parse-events: Fix evsel allocation failure 2026-01-06 14:54:24 -08:00
parse-events.h perf tools: Add support for perf_event_attr::config4 2025-11-24 12:20:06 -08:00
parse-events.l perf tools: Add support for perf_event_attr::config4 2025-11-24 12:20:06 -08:00
parse-events.y perf parse-events: Remove hard coded legacy hardware and cache parsing 2025-10-15 23:59:11 +09:00
parse-regs-options.c perf parse-regs: Introduce a weak function arch__sample_reg_masks() 2024-02-15 13:48:36 -08:00
parse-regs-options.h
parse-sublevel-options.c
parse-sublevel-options.h
path.c perf path: Remove unused is_executable_file() 2024-12-23 13:53:08 -03:00
path.h perf path: Remove unused is_executable_file() 2024-12-23 13:53:08 -03:00
perf-hooks-list.h
perf-hooks.c
perf-hooks.h
perf_api_probe.c perf perf_api_probe: Avoid scanning all PMUs, try software PMU first 2025-10-15 23:59:10 +09:00
perf_api_probe.h
perf_event_attr_fprintf.c perf tools: Minimal DEFERRED_CALLCHAIN support 2025-12-02 16:13:32 -08:00
perf_regs.c perf parse-regs: Introduce a weak function arch__sample_reg_masks() 2024-02-15 13:48:36 -08:00
perf_regs.h perf parse-regs: Introduce a weak function arch__sample_reg_masks() 2024-02-15 13:48:36 -08:00
pfm.c perf auxtrace: Remove errno.h from auxtrace.h and fix transitive dependencies 2025-11-13 23:03:11 -08:00
pfm.h
pmu.c perf pmu: Relax uncore wildcard matching to allow numeric suffix 2026-01-06 16:34:26 +01:00
pmu.h perf pmu: fix duplicate conditional statement 2025-11-26 09:57:13 -08:00
pmu.l
pmu.y perf pmu: Add YYDEBUG 2023-09-12 17:47:00 -03:00
pmus.c perf list: Skip ABI PMUs when printing pmu values 2025-07-26 16:31:43 -07:00
pmus.h perf pmus: Factor perf_pmus__find_by_attr out of evsel__find_pmu 2025-07-24 13:41:35 -07:00
powerpc-vpadtl.c perf auxtrace: Remove errno.h from auxtrace.h and fix transitive dependencies 2025-11-13 23:03:11 -08:00
powerpc-vpadtl.h perf powerpc: Process auxtrace events and display in 'perf report -D' 2025-10-01 11:22:04 -03:00
print-events.c perf print-events: Remove print_symbol_events 2025-10-15 23:59:11 +09:00
print-events.h perf print-events: Remove print_symbol_events 2025-10-15 23:59:11 +09:00
print_binary.c
print_binary.h
print_insn.c perf capstone: Move capstone functionality into its own file 2025-10-02 15:36:59 -03:00
print_insn.h perf annotate: Use capstone_init and remove open_capstone_handle from disasm.c 2024-07-31 16:12:59 -03:00
probe-event.c perf probe-event: Ensure probe event nsinfo is always cleared 2025-12-03 11:07:23 -08:00
probe-event.h perf probe: Replace unacceptable characters when generating event name 2024-12-10 15:41:10 -03:00
probe-file.c perf build-id: Change sprintf functions to snprintf 2025-07-25 10:37:13 -07:00
probe-file.h perf: Remove unused del_perf_probe_events() 2024-11-16 17:07:31 -03:00
probe-finder.c perf build-id: Ensure struct build_id is empty before use 2025-07-25 10:37:55 -07:00
probe-finder.h perf probe: Pick the correct dwarf die while adding probe points 2025-02-26 14:25:14 -08:00
pstack.c perf util: Remove unused pstack__pop 2025-03-10 11:31:24 -07:00
pstack.h perf util: Remove unused pstack__pop 2025-03-10 11:31:24 -07:00
python.c perf python: Correct copying of metric_leader in an evsel 2025-12-02 16:12:49 -08:00
rblist.c
rblist.h
record.c perf cpumap: Clean up use of perf_cpu_map__has_any_cpu_or_is_empty 2024-03-21 10:41:28 -03:00
record.h perf record --off-cpu: Add --off-cpu-thresh option 2025-05-05 21:51:54 -03:00
rlimit.c perf evsel: Rename evsel__increase_rlimit to rlimit__increase_nofile 2023-10-25 10:02:11 -07:00
rlimit.h perf evsel: Rename evsel__increase_rlimit to rlimit__increase_nofile 2023-10-25 10:02:11 -07:00
rwsem.c perf rwsem: Add clang's -Wthread-safety annotations 2025-05-21 15:07:13 -03:00
rwsem.h perf rwsem: Add clang's -Wthread-safety annotations 2025-05-21 15:07:13 -03:00
s390-cpumcf-kernel.h perf report: Add s390 raw data interpretation for PAI counters 2023-11-15 12:51:53 -05:00
s390-cpumsf-kernel.h
s390-cpumsf.c perf evlist: Change env variable to session 2025-07-25 10:37:56 -07:00
s390-cpumsf.h
s390-sample-raw.c perf tools: Cache counter names for raw samples on s390 2025-10-31 12:46:19 -07:00
sample-raw.c perf evlist: Change env variable to session 2025-07-25 10:37:56 -07:00
sample-raw.h perf evlist: Change env variable to session 2025-07-25 10:37:56 -07:00
sample.c perf sample: Make user_regs and intr_regs optional 2025-02-12 20:06:11 -08:00
sample.h perf tools: Minimal DEFERRED_CALLCHAIN support 2025-12-02 16:13:32 -08:00
session.c perf tools: Flush remaining samples w/o deferred callchains 2025-12-02 21:59:14 -08:00
session.h perf tool: Add the perf_tool argument to all callbacks 2025-11-07 13:25:05 -08:00
setns.c
setup.py perf build python: Don't leave a.out file when building with clang 2025-10-13 01:58:51 -07:00
sha1.c perf util: add a basic SHA-1 implementation 2025-06-26 10:51:40 -07:00
sha1.h perf util: add a basic SHA-1 implementation 2025-06-26 10:51:40 -07:00
sharded_mutex.c
sharded_mutex.h
sideband_evlist.c
smt.c
smt.h
sort.c perf sort: Use perf_env to set arch sort keys and header 2025-07-25 10:37:58 -07:00
sort.h perf sort: Use perf_env to set arch sort keys and header 2025-07-25 10:37:58 -07:00
spark.c perf spark: Fix includes and add SPDX 2025-07-11 12:36:40 -07:00
spark.h perf spark: Fix includes and add SPDX 2025-07-11 12:36:40 -07:00
srccode.c perf fncache: Switch to using hashmap 2025-05-13 16:36:22 -03:00
srccode.h
srcline.c perf srcline: Fallback between addr2line implementations 2025-10-06 16:47:49 -03:00
srcline.h perf srcline: Fallback between addr2line implementations 2025-10-06 16:47:49 -03:00
stat-display.c perf stat: Display metric-only for 0 counters 2025-11-17 17:31:59 -08:00
stat-shadow.c perf stat: Reduce scope of walltime_nsecs_stats 2025-11-17 18:43:09 -08:00
stat.c perf tool: Add the perf_tool argument to all callbacks 2025-11-07 13:25:05 -08:00
stat.h perf stat: Reduce scope of walltime_nsecs_stats 2025-11-17 18:43:09 -08:00
strbuf.c
strbuf.h
stream.c perf stream: Use evsel rather than evsel->idx 2024-12-23 13:53:08 -03:00
stream.h perf stream: Use evsel rather than evsel->idx 2024-12-23 13:53:08 -03:00
strfilter.c
strfilter.h
string.c perf string: Avoid undefined NULL+1 2024-12-12 15:53:36 -03:00
string2.h perf string: Add strpbrk_esq() and strdup_esq() for escape and quote 2024-11-14 16:56:32 -03:00
strlist.c
strlist.h
svghelper.c perf cpumap: Reduce transitive dependencies on libperf MAX_NR_CPUS 2024-12-09 17:52:41 -03:00
svghelper.h
symbol-elf.c perf symbol: Fix ENOENT case for filename__read_build_id 2025-12-17 07:30:51 -08:00
symbol-minimal.c perf symbol: Fix ENOENT case for filename__read_build_id 2025-12-17 07:30:51 -08:00
symbol.c [GIT PULL] perf tools changes for v6.19 2025-12-07 07:07:02 -08:00
symbol.h perf tools: Don't read build-ids from non-regular files 2025-11-26 10:13:38 -08:00
symbol_conf.h perf record: Make --buildid-mmap the default 2025-07-25 10:37:56 -07:00
symbol_fprintf.c perf dso: Add reference count checking and accessor functions 2024-05-06 15:28:49 -03:00
symsrc.h
synthetic-events.c perf tools: Don't read build-ids from non-regular files 2025-11-26 10:13:38 -08:00
synthetic-events.h perf build: Remove NO_AUXTRACE build option 2025-11-13 23:03:11 -08:00
syscalltbl.c perf syscalltbl: Mask off ABI type for MIPS system calls 2025-03-20 22:58:23 -07:00
syscalltbl.h perf syscalltbl: Remove struct syscalltbl 2025-03-20 22:57:57 -07:00
target.c perf target: Remove uid from target 2025-06-09 11:18:18 -07:00
target.h perf target: Remove uid from target 2025-06-09 11:18:18 -07:00
term.c
term.h
thread-stack.c x86/retpoline,kprobes: Skip optprobe check for indirect jumps with retpolines and IBT 2023-08-14 11:46:51 +02:00
thread-stack.h
thread.c perf thread: Ensure comm_lock held for comm_list 2025-06-11 13:40:31 -07:00
thread.h perf thread: Ensure comm_lock held for comm_list 2025-06-11 13:40:31 -07:00
thread_map.c perf thread_map: Remove uid options 2025-06-09 11:18:18 -07:00
thread_map.h perf thread_map: Remove uid options 2025-06-09 11:18:18 -07:00
threads.c perf tools: Remove unnecessary parentheses 2024-10-14 12:04:31 -07:00
threads.h perf threads: Reduce table size from 256 to 8 2024-03-03 22:52:13 -08:00
time-utils.c perf time-utils: Fix 32-bit nsec parsing 2024-09-03 11:21:55 -03:00
time-utils.h
tool.c perf tools: Merge deferred user callchains 2025-12-02 21:59:14 -08:00
tool.h perf tools: Merge deferred user callchains 2025-12-02 21:59:14 -08:00
tool_pmu.c perf tool_pmu: More accurately set the cpus for tool events 2025-11-17 18:43:09 -08:00
tool_pmu.h perf tool_pmu: More accurately set the cpus for tool events 2025-11-17 18:43:09 -08:00
top.c perf top: Switch user option to use BPF filter 2025-06-09 11:18:18 -07:00
top.h perf top: Switch user option to use BPF filter 2025-06-09 11:18:18 -07:00
topdown.c
topdown.h
tp_pmu.c perf tp_pmu: Remove unnecessary check 2025-09-03 12:34:55 -03:00
tp_pmu.h perf tp_pmu: Add event APIs 2025-07-26 16:31:43 -07:00
trace-event-info.c perf trace-event-info: Avoid passing NULL value to closedir 2023-10-12 10:01:57 -07:00
trace-event-parse.c perf trace-event: Constify print arguments 2024-12-09 17:52:42 -03:00
trace-event-read.c perf build: Include libtraceevent headers directly indicated by pkg-config 2024-11-08 22:42:57 -08:00
trace-event-scripting.c perf script: Fix typo in branch event mask 2025-03-13 13:19:27 -07:00
trace-event.c perf build: Include libtraceevent headers directly indicated by pkg-config 2024-11-08 22:42:57 -08:00
trace-event.h perf script: Make printing flags reliable 2025-03-05 09:13:19 -08:00
trace.h perf trace: Add --max-summary option 2025-09-19 12:14:29 -03:00
trace_augment.h perf trace: Split BPF skel code to util/bpf_trace_augment.c 2025-06-26 10:31:05 -07:00
tracepoint.c perf tracepoint: Don't scan all tracepoints to test if one exists 2024-05-09 18:46:43 -03:00
tracepoint.h perf tracepoint: Don't scan all tracepoints to test if one exists 2024-05-09 18:46:43 -03:00
trigger.h
tsc.c perf tools: Fix typos Muliplier -> Multiplier 2024-11-13 16:27:35 -03:00
tsc.h perf tool_pmu: Move expr literals to tool_pmu 2024-10-10 23:40:32 -07:00
units.c perf units: Fix insufficient array space 2025-03-13 00:30:08 -07:00
units.h
unwind-libdw.c perf unwind-libdw: skip non-regular files 2025-06-24 10:27:50 -07:00
unwind-libdw.h
unwind-libunwind-local.c perf libunwind arm64: Fix missing close parens in an if statement 2025-04-10 17:51:31 -07:00
unwind-libunwind.c perf dso: Add reference count checking and accessor functions 2024-05-06 15:28:49 -03:00
unwind.h perf unwind: Use perf_arch_reg_{ip|sp}() to substitute macros 2023-08-16 08:48:06 -03:00
usage.c
util.c perf util: Remove kernel version deadcode 2024-11-16 16:30:39 -03:00
util.h perf util: Remove kernel version deadcode 2024-11-16 16:30:39 -03:00
values.c perf values: Use evsel rather than evsel->idx 2024-12-23 13:53:08 -03:00
values.h perf values: Use evsel rather than evsel->idx 2024-12-23 13:53:08 -03:00
vdso.c perf vdso: Missed put on 32-bit dsos 2024-09-27 15:38:52 -03:00
vdso.h
zlib.c perf util: Fix compression checks returning -1 as bool 2025-09-12 15:41:57 -03:00
zstd.c perf mmap: Lazily initialize zstd streams to save memory when not using it 2023-11-28 14:25:06 -03:00