linux/tools/perf/util
Jiebin Sun 1b4eb7a2dd perf c2c: add column rendering for function view
Add renderers for the function view's Cycles %, Store count, and
hierarchy identity columns. The identity column renders the read-side
function, contending writer, or cacheline, with indentation for the
hierarchy level. Also add width and header helpers, estimated-cycle
calculation, comparators, and the dimension table that ties them together.

Clamp the identity renderer's returned length to its local buffer before
using it for pointer and padding calculations. This handles snprintf-style
would-have-been lengths without changing normal output.

The next patch connects these dimensions to the view's HPP lists, so the
symbols used only there are temporarily marked __maybe_unused.

Signed-off-by: Jiebin Sun <jiebin.sun@intel.com>
Reviewed-by: Tianyou Li <tianyou.li@intel.com>
Reviewed-by: Wangyang Guo <wangyang.guo@intel.com>
Reviewed-by: Ian Rogers <irogers@google.com>
Cc: Dapeng Mi <dapeng1.mi@linux.intel.com>
Cc: James Clark <james.clark@linaro.org>
Cc: Thomas Falcon <thomas.falcon@intel.com>
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
2026-08-17 16:04:05 -07:00
..
annotate-arch perf annotate: Use jump__delete when freeing LoongArch jumps 2026-04-13 23:41:11 -07:00
arm-spe-decoder perf arm_spe: Print remaining IMPDEF event numbers 2026-05-05 22:04:28 -03:00
bpf_skel perf trace: Refactor augmented_raw_syscalls using bpf_for 2026-07-16 10:57:40 -07:00
cs-etm-decoder perf cs-etm: Queue context packets for frontend 2026-06-10 18:55:48 -03:00
dwarf-regs-arch perf dwarf-regs: Add MIPS perf to DWARF register number mapping functions 2026-01-20 15:43:56 -03:00
hisi-ptt-decoder perf hisi-ptt: Fix spelling and abbreviation errors 2026-07-31 15:48:12 -07:00
include perf dwarf-regs: Add MIPS perf to DWARF register number mapping functions 2026-01-20 15:43:56 -03:00
intel-pt-decoder perf intel-pt: Fix snprintf size tracking bug in insn decoder 2026-06-10 18:56:01 -03:00
kvm-stat-arch perf kvm: Kill STRDUP_FAIL_EXIT() 2026-07-03 13:40:24 -07:00
libunwind-arch perf unwind-libunwind: Add RISC-V libunwind support 2026-05-15 16:19:50 -03:00
perf-regs-arch perf riscv: Add SDT argument parsing for RISC-V 2026-05-20 13:29:23 -03:00
scripting-engines perf symbol: Add setters for bitfields sharing a byte to avoid concurrent update issues 2026-06-03 16:53:45 -03:00
addr_location.c perf map_symbol: Switch from holding maps to holding thread 2026-01-23 16:58:39 -03:00
addr_location.h perf map_symbol: Switch from holding maps to holding thread 2026-01-23 16:58:39 -03:00
addr2line.c perf addr2line: Remove global variable addr2line_timeout_ms 2026-04-08 10:28:49 -07:00
addr2line.h perf addr2line: Remove global variable addr2line_timeout_ms 2026-04-08 10:28:49 -07:00
affinity.c libperf cpumap: Make index and nr types unsigned 2026-04-01 14:50:53 -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: Add reference count checking 2026-06-30 10:17:11 -07:00
annotate-data.c perf evlist: Add reference count checking 2026-06-30 10:17:11 -07:00
annotate-data.h perf annotate-data: Use DWARF location ranges to preserve reg state 2026-03-19 14:42:29 -07:00
annotate.c perf annotate: Be robust to annotating without a thread 2026-07-27 17:30:46 -07:00
annotate.h perf annotate: Be robust to annotating without a thread 2026-07-27 17:30:46 -07:00
arm-spe.c perf arm-spe: Reject zero nr_cpu in metadata to prevent division by zero 2026-08-03 12:43:10 -07: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 record: Refactor ARM64 leaf caller setup out of arch 2026-05-14 20:50:00 -03:00
arm64-frame-pointer-unwind-support.h perf record: Refactor ARM64 leaf caller setup out of arch 2026-05-14 20:50:00 -03:00
aslr.c perf evsel/evlist: Avoid unnecessary #includes 2026-06-30 10:17:09 -07:00
aslr.h perf aslr: Strip sample registers 2026-06-15 14:33:49 -03:00
auxtrace.c perf auxtrace: Fix queue grow overflow and old array leak 2026-08-03 12:42:53 -07:00
auxtrace.h perf auxtrace: Include sys/types.h for pid_t 2025-12-03 11:01:05 -08:00
blake2s.c perf util: Add BLAKE2s support 2026-01-13 17:03:25 -03:00
blake2s.h perf util: Add BLAKE2s support 2026-01-13 17:03:25 -03:00
block-info.c perf evlist: Add reference count checking 2026-06-30 10:17:11 -07:00
block-info.h perf report: Display the branch counter histogram 2024-08-14 10:20:40 -03:00
block-range.c perf tools: Make more global variables static 2026-04-08 19:21:04 -07:00
block-range.h
bpf_counter_cgroup.c perf evlist: Add reference count checking 2026-06-30 10:17:11 -07:00
bpf_counter.c perf evlist: Add reference count checking 2026-06-30 10:17:11 -07:00
bpf_counter.h perf bpf_counter: Move header declarations into C code 2025-10-01 15:27:02 -03:00
bpf_ftrace.c perf evlist: Add reference count checking 2026-06-30 10:17:11 -07:00
bpf_kwork_top.c libperf cpumap: Make index and nr types unsigned 2026-04-01 14:50:53 -07:00
bpf_kwork.c perf kwork: Fix memory management of kwork_work 2026-05-22 20:51:59 -03:00
bpf_lock_contention.c perf evlist: Add reference count checking 2026-06-30 10:17:11 -07:00
bpf_off_cpu.c perf evlist: Add reference count checking 2026-06-30 10:17:11 -07:00
bpf_trace_augment.c perf util: Sort includes and add missed explicit dependencies 2026-06-30 10:17:08 -07:00
bpf-event.c perf bpf: Add PROG_TAGS to required arrays in __bpf_event__print_bpf_prog_info() 2026-08-05 11:20:02 -07:00
bpf-event.h perf bpf: Validate array presence before casting BPF prog info pointers 2026-06-17 09:21:03 -03:00
bpf-filter.c perf cap: Remove used_root parameter and simplify capability checks 2026-07-23 22:46:33 -07: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 trace beauty: Make beauty generated C code standalone .o files 2026-05-20 17:46:45 -03:00
bpf-utils.c perf bpf: Bounds-check array offsets in bpil_offs_to_addr() 2026-06-17 08:29:00 -03:00
bpf-utils.h perf bpf-event: Use libbpf version rather than feature check 2025-10-03 16:49:51 -03:00
branch.c perf session: Add accessor for session->header.env 2025-07-25 10:37:56 -07:00
branch.h perf branch: Avoid incrementing NULL 2026-03-13 14:13:02 -07:00
btf.c perf bpf: Fix up build failure due to change of btf_vlen() return type 2026-06-22 15:53:34 -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 perf c2c: add function view model skeleton 2026-08-17 16:03:42 -07:00
build-id.c perf tools: Use scnprintf() in build_id__snprintf() and hwmon read_events() 2026-06-10 15:23:53 -03:00
build-id.h perf tool: Remove evsel from tool APIs that pass the sample 2026-05-20 16:34:23 -03:00
c2c-function.c perf c2c: add column rendering for function view 2026-08-17 16:04:05 -07:00
c2c.c perf c2c: extract shared data structures into util/c2c.h 2026-08-17 15:07:08 -07:00
c2c.h perf c2c: extract shared data structures into util/c2c.h 2026-08-17 15:07:08 -07:00
cache.h perf path: Make mkpath thread safe, remove 16384 bytes from .bss 2023-05-28 10:24:14 -03:00
cacheline.c
cacheline.h
call-path.c
call-path.h
callchain.c perf sched: Free callchain nodes in idle thread cleanup 2026-06-06 14:42:19 -03:00
callchain.h perf sched: Free callchain nodes in idle thread cleanup 2026-06-06 14:42:19 -03:00
cap.c perf cap: Remove used_root parameter and simplify capability checks 2026-07-23 22:46:33 -07:00
cap.h perf cap: Remove used_root parameter and simplify capability checks 2026-07-23 22:46:33 -07:00
capstone.c perf annotate: Be robust to annotating without a thread 2026-07-27 17:30:46 -07:00
capstone.h perf capstone: Support for dlopen-ing libcapstone.so 2026-02-03 11:34:02 -03:00
cgroup.c perf evlist: Add reference count checking 2026-06-30 10:17:11 -07:00
cgroup.h perf stat: Move metric list from config to evlist 2025-07-11 12:36:40 -07:00
clockid.c
clockid.h perf clockid: Add missing include 2026-04-02 19:35:16 -07:00
cloexec.c
cloexec.h
color_config.c perf util: Remove unused perf_color_default_config 2025-03-10 11:31:24 -07:00
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
comm.c perf thread: Ensure comm_lock held for comm_list 2025-06-11 13:40:31 -07:00
comm.h
compress.h perf record: Return the written size from process_comp_header() 2026-07-13 13:25:16 -07:00
config.c perf unwind: Refactor get_entries to allow dynamic libdw/libunwind selection 2026-05-15 08:25:02 -03: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
cpumap.c perf tools: Use scnprintf() in cpu_map__snprint() to prevent overflow 2026-06-10 11:38:45 -03:00
cpumap.h perf cpumap: Remove refcnt from 'struct cpu_aggr_map' 2024-05-07 18:06:44 -03:00
cputopo.c libperf cpumap: Make index and nr types unsigned 2026-04-01 14:50:53 -07:00
cputopo.h
cs-etm-base.c perf cs-etm: Require full global header in auxtrace_info size check 2026-06-17 09:21:03 -03:00
cs-etm.c perf cs-etm: Avoid truncating AUX buffer sizes to int 2026-07-22 22:42:25 -07:00
cs-etm.h perf cs-etm: Queue context packets for frontend 2026-06-10 18:55:48 -03:00
data-convert-bt.c perf evlist: Add reference count 2026-06-30 10:17:10 -07:00
data-convert-json.c perf data convert json: Fix trace_seq memory leak in process_sample_event() 2026-07-07 23:04:21 -07:00
data-convert.h perf data ctf: replace libbabeltrace with babeltrace2-ctf-writer 2026-06-04 17:34:52 -03:00
data.c perf data: Add open flag 2026-06-30 10:17:10 -07:00
data.h perf data: Add open flag 2026-06-30 10:17:10 -07:00
db-export.c perf db-export: Remove evsel from struct export_sample 2026-05-20 16:35:59 -03:00
db-export.h perf db-export: Remove evsel from struct export_sample 2026-05-20 16:35:59 -03:00
debug.c perf tools: Make more global variables static 2026-04-08 19:21:04 -07:00
debug.h perf debug: Add function symbols to dump_stack 2025-06-25 10:59:19 -07:00
debuginfo.c perf debuginfo: Fix libdw API contract violations 2026-05-05 21:52:51 -03: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 perf demangle-java: Constify variables storing the result of strchr() on const tables 2026-01-27 02:33:29 -03:00
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: Fix potential NULL pointer dereference and use-after-free in arch__find() 2026-07-17 22:34:06 -07:00
disasm.h perf annotate: Use jump__delete when freeing LoongArch jumps 2026-04-13 23:41:11 -07:00
dlfilter.c perf symbol: Add setters for bitfields sharing a byte to avoid concurrent update issues 2026-06-03 16:53:45 -03:00
dlfilter.h
drm_pmu.c perf pmu: Replace starts_with with strstarts 2026-03-03 17:04:49 -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: Replace assert with runtime check in dso__read_symbol() 2026-08-15 06:37:14 -07:00
dso.h perf dso: Fix kallsyms DSO detection with fallback logic 2026-07-08 17:00:52 -07:00
dsos.c perf tools: Replace basename() calls with perf_basename() 2026-04-08 19:21:05 -07:00
dsos.h perf dso: Constify dso_id 2024-08-19 14:52:13 -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 libdw API contract violations 2026-05-05 21:48:45 -03:00
dwarf-aux.h perf dwarf-aux: Fix libdw API contract violations 2026-05-05 21:48:45 -03:00
dwarf-regs.c perf dwarf-regs: Add MIPS perf to DWARF register number mapping functions 2026-01-20 15:43:56 -03:00
env.c perf env: Add helper to lazily compute the os_release 2026-06-03 16:53:16 -03:00
env.h perf stat: Introduce perf_env__get_cpu_topology() to guard NULL env->cpu 2026-06-06 13:44:46 -03:00
event.c perf tools: Use perf_env__get_cpu_topology() in machine__resolve() 2026-06-10 11:38:45 -03:00
event.h perf sched stats: Add record and rawdump support 2026-01-22 12:29:28 -03:00
events_stats.h perf report: Add latency output field 2025-02-18 14:04:32 -08:00
evlist.c perf evlist: Add reference count checking 2026-06-30 10:17:11 -07:00
evlist.h perf evlist: Add reference count checking 2026-06-30 10:17:11 -07:00
evsel_config.h perf parse-events: Track all user changed config bits 2026-01-14 23:14:54 -03:00
evsel_fprintf.c perf symbol: Add setters for bitfields sharing a byte to avoid concurrent update issues 2026-06-03 16:53:45 -03:00
evsel_fprintf.h perf script: Add new output field 'dsoff' to print dso offset 2023-05-12 15:21:49 -03:00
evsel.c perf trace: Correct default cpumask formatting to hexadecimal 2026-07-23 22:59:42 -07:00
evsel.h perf trace: Correct default cpumask formatting to hexadecimal 2026-07-23 22:59:42 -07:00
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 evlist: Add reference count 2026-06-30 10:17:10 -07:00
expr.h perf stat: Add aggr_nr metric parser support 2026-06-04 10:58:47 -03:00
expr.l perf stat: Add aggr_nr metric parser support 2026-06-04 10:58:47 -03:00
expr.y perf stat: Add aggr_nr metric parser support 2026-06-04 10:58:47 -03:00
find-map.c perf find-map: Remove PATH_MAX 128-byte stack array restriction 2026-08-07 09:43:36 -07:00
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_debug.c perf jit: Fix incorrect file name in DWARF line table 2023-06-20 22:18:58 -07:00
genelf.c perf genelf: Switch from SHA-1 to BLAKE2s for build ID generation 2026-01-13 17:03:28 -03:00
genelf.h perf build: Rename HAVE_DWARF_SUPPORT to HAVE_LIBDW_SUPPORT 2024-10-18 10:17:40 -07:00
hashmap.c
hashmap.h perf tools: Fix possible compiler warnings in hashmap 2024-10-14 12:04:31 -07:00
header.c perf header: Use write lock when translating BPF prog info pointers 2026-08-05 11:20:02 -07:00
header.h perf evlist: Add reference count checking 2026-06-30 10:17:11 -07: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 hisi-ptt: Fix spelling and abbreviation errors 2026-07-31 15:48:12 -07:00
hisi-ptt.h
hist.c perf ui hists: Fix stack use-after-return in symbol_filter_str 2026-07-27 17:13:08 -07:00
hist.h perf c2c: Fix hist entry and format list leaks in c2c_he_free() 2026-06-17 09:21:03 -03:00
hwmon_pmu.c perf hwmon: Fix fd check to accept fd 0 in hwmon_pmu__describe_items() 2026-06-17 08:28:47 -03: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 intel-bts: Fix off-by-one in auxtrace_info minimum size check 2026-08-03 12:43:05 -07:00
intel-bts.h
intel-pt.c perf intel-pt: Fix off-by-one in auxtrace_info minimum size check 2026-08-03 12:43:01 -07:00
intel-pt.h perf pmu: Lazily compute default config 2023-10-17 12:40:50 -07:00
intel-tpebs.c perf evlist: Add reference count checking 2026-06-30 10:17:11 -07: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 perf evlist: Add reference count checking 2026-06-30 10:17:11 -07:00
iostat.h perf evlist: Add reference count checking 2026-06-30 10:17:11 -07:00
jit.h perf jit: Constify filename argument 2024-08-19 14:51:46 -03:00
jitdump.c perf jitdump: Fix a build error with ASAN 2026-06-10 18:55:49 -03:00
jitdump.h perf test: Remove /usr/bin/cc dependency from Intel PT shell test 2026-06-04 11:41:46 -03:00
kvm-stat.c perf kvm: Factor out kvm_need_default_arch_event() 2026-07-03 13:40:23 -07:00
kvm-stat.h perf build: Fix a build error on 32-bit x86 2026-08-02 09:45:18 -07:00
kwork.h perf kwork: Bounds check work->cpu before indexing cpus_runtime[] 2026-05-29 11:44:35 -03:00
levenshtein.c
levenshtein.h
libbfd.c perf libbfd: Fix memory leaks and NULL fclose in BPF disassembly 2026-08-05 11:20:03 -07:00
libbfd.h perf tools: Don't read build-ids from non-regular files 2025-11-26 10:13:38 -08:00
libdw.c perf libdw: Fix outer-frame name resolution and spurious "(inlined)" tag 2026-07-31 15:47:28 -07:00
libdw.h perf powerpc: Unify the skip-callchain-idx libdw with that for addr2line 2026-01-20 13:04:38 -03: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 annotate: Specify llvm features="+all" for aarch64 2026-03-04 18:05:18 -08:00
llvm.h perf srcline: Fallback between addr2line implementations 2025-10-06 16:47:49 -03:00
lock-contention.c perf lock-contention: Use perf_env e_machine rather than arch 2026-06-03 16:50:34 -03:00
lock-contention.h perf lock contention: Add -J/--inject-delay option 2025-05-09 14:32:15 -03:00
lzma.c perf tools: Switch printf("...%s", strerror(errno)) to printf("...%m") 2026-01-14 17:22:50 -03:00
machine.c perf machine: Check snprintf truncation for guest kallsyms path 2026-07-31 16:42:28 -07:00
machine.h perf machine: Propagate machine__init() error to callers 2026-06-17 09:21:03 -03:00
map_symbol.c perf map_symbol: Switch from holding maps to holding thread 2026-01-23 16:58:39 -03:00
map_symbol.h perf map_symbol: Switch from holding maps to holding thread 2026-01-23 16:58:39 -03:00
map.c perf map: Constify objdump offset/address conversion APIs 2025-10-02 15:36:13 -03:00
map.h perf util: Sort includes and add missed explicit dependencies 2026-06-30 10:17:08 -07:00
maps.c perf maps: Add maps__mutate_mapping 2026-06-15 09:01:27 -03:00
maps.h perf maps: Add maps__mutate_mapping 2026-06-15 09:01:27 -03: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 perf tools: Use calloc() where applicable 2026-04-08 19:21:05 -07:00
mem2node.h
memswap.c
memswap.h
metricgroup.c perf metricgroup: Fix metric expression copy leaks 2026-07-10 17:55:16 -07:00
metricgroup.h perf parse-events: Restrict core PMU bypass to --cputype option 2026-06-30 17:09:13 -07:00
mmap.c perf tools: NULL bitmap pointers after bitmap_free() 2026-06-10 13:13:32 -03: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 perf ordered-events: Event processing consistency with the regular reader 2026-04-02 19:35:16 -07:00
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: Restrict core PMU bypass to --cputype option 2026-06-30 17:09:13 -07:00
parse-events.h perf parse-events: Restrict core PMU bypass to --cputype option 2026-06-30 17:09:13 -07: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 evsel: Add reference count 2026-06-30 10:17:11 -07:00
parse-regs-options.c perf regs: Remove __weak attributive arch__xxx_reg_mask() functions 2026-02-06 12:16:09 -03: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_api_probe.c perf evlist: Add reference count 2026-06-30 10:17:10 -07:00
perf_api_probe.h
perf_event_attr_fprintf.c perf tools: Bounds check perf_event_attr fields against attr.size before printing 2026-05-29 11:44:33 -03:00
perf_regs.c perf riscv: Add SDT argument parsing for RISC-V 2026-05-20 13:29:23 -03:00
perf_regs.h perf riscv: Add SDT argument parsing for RISC-V 2026-05-20 13:29:23 -03:00
perf-hooks-list.h
perf-hooks.c
perf-hooks.h
PERF-VERSION-GEN
pfm.c perf evlist: Add reference count checking 2026-06-30 10:17:11 -07:00
pfm.h
pmu.c perf pmu: Recognize default_core as a core PMU in more places 2026-06-30 16:55:58 -07:00
pmu.h perf evlist: Reduce affinity use and move into iterator, fix no affinity 2026-02-10 09:34:44 -03:00
pmu.l
pmu.y perf pmu: Add YYDEBUG 2023-09-12 17:47:00 -03:00
pmus.c perf pmu: Recognize default_core as a core PMU in more places 2026-06-30 16:55:58 -07:00
pmus.h perf metricgroup: Avoid scanning unnecessary PMUs for identifier match 2026-05-14 20:59:08 -03:00
powerpc-vpadtl.c perf tools: Use calloc() where applicable 2026-04-08 19:21:05 -07:00
powerpc-vpadtl.h perf powerpc: Process auxtrace events and display in 'perf report -D' 2025-10-01 11:22:04 -03:00
print_binary.c
print_binary.h
print_insn.c perf print_insn: Use e_machine for fallback IP length check 2026-06-03 16:46:07 -03:00
print_insn.h perf print_insn: Use e_machine for fallback IP length check 2026-06-03 16:46:07 -03:00
print-events.c perf evsel: Add reference count 2026-06-30 10:17:11 -07:00
print-events.h perf print-events: Remove print_symbol_events 2025-10-15 23:59:11 +09:00
probe-event.c perf symbol: Add setters for bitfields sharing a byte to avoid concurrent update issues 2026-06-03 16:53:45 -03: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/probe: Ignore comment lines in dynamic_events/kprobe_events file 2026-06-30 16:37:49 -07:00
probe-file.h perf: Remove unused del_perf_probe_events() 2024-11-16 17:07:31 -03:00
probe-finder.c perf probe-finder: Fix libdw API contract violations 2026-05-05 21:50:56 -03: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: Fix memory leak in pyrf__metrics_cb 2026-08-09 22:02:41 -07:00
rblist.c
rblist.h
record.c perf evlist: Add reference count checking 2026-06-30 10:17:11 -07:00
record.h perf record: Split --data-mmap option 2025-12-17 09:30:37 -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 python: Use evsel in sample in pyrf_event 2026-06-30 10:17:12 -07:00
sample-raw.c perf evlist: Add reference count checking 2026-06-30 10:17:11 -07:00
sample-raw.h perf sample-raw: Use perf_env e_machine rather than arch 2026-06-03 16:48:00 -03:00
sample.c perf python: Use evsel in sample in pyrf_event 2026-06-30 10:17:12 -07:00
sample.h perf sample: Add file_offset field to struct perf_sample 2026-06-03 16:31:03 -03:00
session.c perf python: Refactor and add accessors to sample event 2026-06-30 10:17:14 -07:00
session.h perf python: Refactor and add accessors to sample event 2026-06-30 10:17:14 -07:00
setns.c
setup.py perf python: Clean up and restructure setup.py 2026-07-23 22:49:39 -07:00
sharded_mutex.c perf sharded_mutex: Introduce sharded_mutex 2023-06-20 17:03:43 -07:00
sharded_mutex.h perf sharded_mutex: Introduce sharded_mutex 2023-06-20 17:03:43 -07:00
sideband_evlist.c perf record: fix poll storm when monitored threads exit 2026-07-07 22:59:07 -07:00
smt.c
smt.h
sort.c perf c2c: Fix error masking, OOM, and unchecked caller errors in hpp_list__parse() 2026-08-05 21:50:45 -07:00
sort.h perf report: Add comm_nodigit sort key 2026-03-26 15:22:18 -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 symbol: Add setters for bitfields sharing a byte to avoid concurrent update issues 2026-06-03 16:53:45 -03:00
srcline.h perf srcline: Introduce inline_node__clear_frames() 2026-05-05 21:49:18 -03:00
stat-display.c perf stat: Add --hide-zero-events option to suppress zero-count events 2026-07-19 21:49:30 -07:00
stat-shadow.c perf evlist: Add reference count checking 2026-06-30 10:17:11 -07:00
stat.c perf evlist: Add reference count checking 2026-06-30 10:17:11 -07:00
stat.h perf stat: Add --hide-zero-events option to suppress zero-count events 2026-07-19 21:49:30 -07:00
strbuf.c
strbuf.h
stream.c perf evlist: Add reference count checking 2026-06-30 10:17:11 -07: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 perf strlist: Remove dont_dupstr logic, used only once 2026-01-27 21:19:24 -03:00
strlist.h perf strlist: Remove dont_dupstr logic, used only once 2026-01-27 21:19:24 -03:00
svghelper.c perf timechart: Fix cpu2y() OOB read on untrusted CPU index 2026-06-06 14:27:52 -03:00
svghelper.h
symbol_conf.h perf unwind: Refactor get_entries to allow dynamic libdw/libunwind selection 2026-05-15 08:25:02 -03:00
symbol_fprintf.c perf symbol: Add setters for bitfields sharing a byte to avoid concurrent update issues 2026-06-03 16:53:45 -03:00
symbol-elf.c perf symbols: Skip dynamic symbols with invalid section indexes 2026-08-02 09:44:58 -07:00
symbol-minimal.c perf symbols: Validate p_filesz before use in filename__read_build_id() 2026-06-17 08:25:14 -03:00
symbol.c perf cap: Remove used_root parameter and simplify capability checks 2026-07-23 22:46:33 -07:00
symbol.h perf symbols: skip livepatch symbols when loading kallsyms 2026-07-03 13:38:08 -07:00
symsrc.h
synthetic-events.c perf synthetic-events: Fix divide by zero in perf_event__synthesize_threads 2026-08-09 22:02:42 -07:00
synthetic-events.h perf inject: Don't pass evsel with sample 2026-05-20 16:39:40 -03:00
target.c perf target: Remove uid from target 2025-06-09 11:18:18 -07:00
target.h perf target: Constify simple check functions 2026-03-19 14:42:46 -07:00
term.c
term.h
thread_map.c perf strlist: Remove dont_dupstr logic, used only once 2026-01-27 21:19:24 -03:00
thread_map.h perf thread_map: Remove uid options 2025-06-09 11:18:18 -07:00
thread-stack.c perf thread-stack: Fix heap buffer overflow on branch stack wrap copy 2026-08-03 12:42:49 -07:00
thread-stack.h
thread.c perf tools: Fix thread__set_comm_from_proc() on empty comm file 2026-06-10 18:56:01 -03:00
thread.h perf env, dso, thread: Add _endian variants for e_machine helpers 2026-06-03 16:45:21 -03: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 evlist: Add reference count checking 2026-06-30 10:17:11 -07:00
time-utils.h
tool_pmu.c perf tool_pmu: Make tool PMU events respect enable/disable 2026-05-22 21:37:34 -03:00
tool_pmu.h perf tool_pmu: Make tool PMU events respect enable/disable 2026-05-22 21:37:34 -03:00
tool.c perf session: Check for decompression buffer size overflow 2026-05-29 11:44:34 -03:00
tool.h perf tool: Remove evsel from tool APIs that pass the sample 2026-05-20 16:34:23 -03:00
top.c perf evlist: Add reference count checking 2026-06-30 10:17:11 -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: Address const-correctness errors in recent glibcs 2026-01-27 02:22:00 -03:00
tp_pmu.h perf tp_pmu: Add event APIs 2025-07-26 16:31:43 -07:00
trace_augment.h perf trace: Split BPF skel code to util/bpf_trace_augment.c 2025-06-26 10:31:05 -07:00
trace-event-info.c perf trace-event: Constify variables storing the result of strchr() on const tables 2026-01-27 02:26:48 -03:00
trace-event-parse.c perf trace-event: Constify print arguments 2024-12-09 17:52:42 -03:00
trace-event-read.c perf trace-event: Fix infinite loop in skip() 2026-08-07 09:43:36 -07:00
trace-event-scripting.c perf script: Don't pass evsel with sample 2026-05-20 16:39:40 -03:00
trace-event.c perf trace-event: Avoid double free and leak in trace_event__cleanup()/trace_event__init() 2026-08-07 09:43:36 -07:00
trace-event.h perf script: Don't pass evsel with sample 2026-05-20 16:39:40 -03:00
trace.h perf trace: Add --max-summary option 2025-09-19 12:14:29 -03: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 event_contains() macro to verify full field extent 2026-05-29 11:44:19 -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: Constify variables storing the result of strchr() on const tables 2026-01-27 02:28:33 -03:00
units.h
unwind-libdw.c perf unwind-libdw: Fix unwinding of multi-threaded processes 2026-07-31 15:31:20 -07:00
unwind-libdw.h perf unwind-libdw: Wire up e_flags for CSKY 2026-01-26 18:31:27 -03:00
unwind-libunwind.c perf unwind-libunwind: Remove libunwind-local 2026-05-15 16:19:50 -03:00
unwind.c perf unwind: Refactor get_entries to allow dynamic libdw/libunwind selection 2026-05-15 08:25:02 -03:00
unwind.h perf unwind-libunwind: Remove libunwind-local 2026-05-15 16:19:50 -03:00
usage.c
util.c perf cap: Remove used_root parameter and simplify capability checks 2026-07-23 22:46:33 -07:00
util.h perf tools: Replace basename() calls with perf_basename() 2026-04-08 19:21:05 -07:00
values.c perf tools: Use calloc() where applicable 2026-04-08 19:21:05 -07: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 record: Return the written size from process_comp_header() 2026-07-13 13:25:16 -07:00