linux/tools/perf/util
Ilkka Koskinen e934a35e3c perf cs-etm: Fix the assert() to handle captured and unprocessed cpu trace
If one builds perf with DEBUG=1, captures data on multiple CPUs and
finally runs 'perf report -C <cpu>' for only one of the cpus, assert()
aborts the program. This happens because there are empty queues with
format set.

This patch changes the condition to abort only if a queue is not empty
and if the format is unset.

  $ make -C tools/perf DEBUG=1 CORESIGHT=1 CSLIBS=/usr/lib CSINCLUDES=/usr/include install
  $ perf record -o kcore --kcore -e cs_etm/timestamp/k -s -C 0-1 dd if=/dev/zero of=/dev/null bs=1M count=1
  $ perf report --input kcore/data --vmlinux=/home/ikoskine/projects/linux/vmlinux -C 1
  Aborted (core dumped)

Fixes: 57880a7966 ("perf: cs-etm: Allocate queues for all CPUs")
Reviewed-by: James Clark <james.clark@linaro.org>
Signed-off-by: Ilkka Koskinen <ilkka@os.amperecomputing.com>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Ian Rogers <irogers@google.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: James Clark <james.clark@linaro.org>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: John Garry <john.g.garry@oracle.com>
Cc: Kan Liang <kan.liang@linux.intel.com>
Cc: Leo Yan <leo.yan@linux.dev>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Mike Leach <mike.leach@linaro.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Suzuki Poulouse <suzuki.poulose@arm.com>
Cc: Will Deacon <will@kernel.org>
Link: https://lore.kernel.org/r/20240924233930.5193-1-ilkka@os.amperecomputing.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2024-10-02 18:21:49 -03:00
..
arm-spe-decoder perf util: Make util its own library 2024-06-26 11:07:42 -07:00
bpf_skel perf trace: Collect augmented data using BPF 2024-09-10 09:52:20 -03:00
cs-etm-decoder perf: cs-etm: Print queue number in raw trace dump 2024-08-29 15:56:37 -03:00
hisi-ptt-decoder perf util: Make util its own library 2024-06-26 11:07:42 -07:00
include perf annotate: Update parameters for reg extract functions to use raw instruction on powerpc 2024-07-31 16:12:59 -03:00
intel-pt-decoder perf script: Minimize "not reaching sample" for '-F +brstackinsn' 2024-09-03 12:22:01 -03: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 script python: Avoid buffer overflow in python PEBS register interface 2024-09-06 11:44:58 -03:00
addr_location.c perf addr_location: Add init/exit/copy functions 2023-06-12 15:57:53 -03:00
addr_location.h perf addr_location: Add init/exit/copy functions 2023-06-12 15:57:53 -03:00
affinity.c perf tools: Use dedicated non-atomic clear/set bit helpers 2022-12-05 09:29:06 -03:00
affinity.h
amd-sample-raw.c perf script ibs: Remove unused include 2023-08-23 08:41:52 -03:00
annotate-data.c perf annotate-data: Add pr_debug_scope() 2024-09-10 17:32:47 -03:00
annotate-data.h perf annotate-data: Copy back variable types after move 2024-08-22 12:38:18 -03:00
annotate.c perf env: Find correct branch counter info on hybrid 2024-09-11 13:08:46 -03:00
annotate.h perf annotate: Display the branch counter histogram 2024-08-14 10:20:40 -03:00
archinsn.h
arm64-frame-pointer-unwind-support.c perf unwind: Don't show unwind error messages when augmenting frame pointer stack 2022-04-09 12:34:29 -03:00
arm64-frame-pointer-unwind-support.h perf unwind arm64: Remove needless event.h & thread.h includes 2022-10-27 16:37:26 -03:00
arm-spe.c perf tool: Constify tool pointers 2024-08-12 18:05:14 -03:00
arm-spe.h perf pmu: Lazily compute default config 2023-10-17 12:40:50 -07:00
auxtrace.c perf auxtrace: Use evsel__is_aux_event() for checking AUX event 2024-08-28 18:14:42 -03:00
auxtrace.h perf auxtrace: Remove unused 'pmu' pointer from struct auxtrace_record 2024-08-28 18:15:16 -03: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_counter_cgroup.c perf stat: Constify control data for BPF 2024-09-03 11:43:16 -03:00
bpf_counter.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
bpf_counter.h perf build: Properly guard libbpf includes 2023-01-10 10:51:39 -03:00
bpf_ftrace.c perf ftrace latency: Constify control data for BPF 2024-09-03 11:47:02 -03:00
bpf_kwork_top.c perf kwork: Constify control data for BPF 2024-09-03 11:50:20 -03:00
bpf_kwork.c perf kwork: Constify control data for BPF 2024-09-03 11:50:20 -03:00
bpf_lock_contention.c perf lock contention: Constify control data for BPF 2024-09-03 11:53:15 -03:00
bpf_map.c perf bpf: Remove redundant check that map is NULL 2024-08-21 11:39:51 -03:00
bpf_map.h perf bpf: No need to include compiler.h when HAVE_LIBBPF_SUPPORT is true 2022-10-27 16:37:26 -03:00
bpf_off_cpu.c perf record offcpu: Constify control data for BPF 2024-09-03 11:54:47 -03:00
bpf-event.c perf tool: Constify tool pointers 2024-08-12 18:05:14 -03:00
bpf-event.h perf env: Avoid recursively taking env->bpf_progs.lock 2024-01-03 17:54:54 -03:00
bpf-filter.c perf bpf-filter: Support filtering on cgroups 2024-08-28 18:21:49 -03:00
bpf-filter.h perf bpf-filter: Support pin/unpin BPF object 2024-08-01 12:11:33 -03:00
bpf-filter.l perf bpf-filter: Support filtering on cgroups 2024-08-28 18:21:49 -03:00
bpf-filter.y perf bpf-filter: Support filtering on cgroups 2024-08-28 18:21:49 -03:00
bpf-prologue.h perf bpf: No need to include headers just use forward declarations 2022-10-31 11:05:41 -03:00
bpf-utils.c perf bpf: 8 byte align bpil data 2022-06-28 12:05:25 -03:00
bpf-utils.h perf bpf: Pull in bpf_program__get_prog_info_linear() 2021-11-01 18:16:40 -03:00
branch.c perf callchain: Make display use of branch_type_stat const 2023-10-25 13:38:50 -07:00
branch.h perf annotate: Save branch counters for each block 2024-08-14 10:20:40 -03:00
Build perf report: Support LLVM for addr2line() 2024-09-03 10:15:16 -03:00
build-id.c perf inject: Fix build ID injection 2024-09-10 17:32:47 -03:00
build-id.h perf buildid-list: Use perf_tool__init 2024-08-12 18:07:10 -03: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 perf c2c: Add report option to show false sharing in adjacent cachelines 2023-02-16 09:33:45 -03:00
call-path.c
call-path.h perf tools: Fix various typos in comments 2021-03-23 17:13:43 -03:00
callchain.c perf callchain: Allow symbols to be optional when resolving a callchain 2024-09-10 17:32:47 -03:00
callchain.h perf callchain: Allow symbols to be optional when resolving a callchain 2024-09-10 17:32:47 -03:00
cap.c perf cap: Tidy up and improve capability testing 2024-08-20 17:53:12 -03:00
cap.h perf cap: Tidy up and improve capability testing 2024-08-20 17:53:12 -03:00
cgroup.c perf tools: Ignore deleted cgroups 2024-05-10 10:52:46 -03:00
cgroup.h perf lock contention: Add -G/--cgroup-filter option 2023-09-12 17:32:00 -03:00
clockid.c
clockid.h
cloexec.c perf util: Remove weak sched_getcpu 2023-03-14 08:29:46 -03:00
cloexec.h
color_config.c
color.c
color.h
comm.c perf comm str: Avoid sort during insert 2024-07-03 14:59:15 -07:00
comm.h
compress.h perf mmap: Lazily initialize zstd streams to save memory when not using it 2023-11-28 14:25:06 -03:00
config.c perf parse-events: Remove BPF event support 2023-08-15 16:41:48 -03:00
config.h perf tools: Add perf_config_scan() 2022-10-04 08:55:21 -03:00
copyfile.c
copyfile.h
counts.c perf stat: Remove unused perf_counts.aggr field 2022-10-27 16:37:25 -03:00
counts.h perf stat: Remove unused perf_counts.aggr field 2022-10-27 16:37:25 -03:00
cpu-set-sched.h
cpumap.c perf cpumap: Remove refcnt from 'struct cpu_aggr_map' 2024-05-07 18:06:44 -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: 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 perf expr: Make the online topology accessible globally 2023-02-19 08:03:12 -03:00
cs-etm-base.c perf cs-etm: Move mapping of Trace ID and cpu into helper function 2023-04-04 09:39:56 -03:00
cs-etm.c perf cs-etm: Fix the assert() to handle captured and unprocessed cpu trace 2024-10-02 18:21:49 -03: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 data convert ctf: Use perf_tool__init() 2024-08-12 18:13:00 -03:00
data-convert-json.c perf data convert json: Use perf_tool__init() 2024-08-12 18:12:44 -03:00
data-convert.h perf data: Add JSON export 2021-04-29 10:30:58 -03:00
data.c perf data: Allow to use given fd in data->file.fd 2024-08-12 18:15:39 -03:00
data.h perf data: Minor code style alignment cleanup 2024-01-22 12:08:21 -08:00
db-export.c perf dso: Add reference count checking and accessor functions 2024-05-06 15:28:49 -03:00
db-export.h perf scripting python: Add 'addr_location' for 'addr' 2021-05-25 10:07:17 -03:00
debug.c perf annotate-data: Add debug messages 2024-03-21 10:41:28 -03:00
debug.h perf annotate-data: Add debug messages 2024-03-21 10:41:28 -03:00
debuginfo.c perf tools: Add util/debuginfo.[ch] files 2023-11-10 09:03:54 -03:00
debuginfo.h perf debuginfo: Fix the build with !HAVE_DWARF_SUPPORT 2024-08-09 17:37:03 -03:00
demangle-cxx.cpp perf symbol: Avoid memory leak from abi::__cxa_demangle 2023-03-20 12:49:58 -03:00
demangle-cxx.h perf symbol: Add abi::__cxa_demangle C++ demangling support 2023-03-14 08:29:46 -03:00
demangle-java.c perf tools: Fix various typos in comments 2021-03-23 17:13:43 -03:00
demangle-java.h
demangle-ocaml.c perf tools: Preserve identifier id in OCaml demangler 2021-03-30 12:45:59 -03:00
demangle-ocaml.h
demangle-rust.c
demangle-rust.h
disasm_bpf.c perf bpf: Move BPF disassembly routines to separate file to avoid clash with capstone bpf headers 2024-08-01 18:54:19 -03:00
disasm_bpf.h perf bpf: Move BPF disassembly routines to separate file to avoid clash with capstone bpf headers 2024-08-01 18:54:19 -03:00
disasm.c perf annotate: LLVM-based disassembler 2024-09-03 10:39:20 -03:00
disasm.h perf annotate: Set instruction name to be used with insn-stat when using raw instruction 2024-07-31 16:12:59 -03:00
dlfilter.c perf dso: Add reference count checking and accessor functions 2024-05-06 15:28:49 -03:00
dlfilter.h perf tests: Add dlfilter test 2021-08-11 09:35:44 -03:00
dso.c perf dso: Constify dso_id 2024-08-19 14:52:13 -03:00
dso.h perf dso: Constify dso_id 2024-08-19 14:52:13 -03:00
dsos.c perf dso: Constify dso_id 2024-08-19 14:52:13 -03: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: Handle bitfield members from pointer access 2024-08-22 12:32:18 -03:00
dwarf-aux.h perf dwarf-aux: Fix build with !HAVE_DWARF_GETLOCATIONS_SUPPORT 2024-10-02 18:21:49 -03:00
dwarf-regs.c perf dwarf-regs: Add get_dwarf_regnum() 2023-12-23 10:56:05 -03:00
env.c perf env: Find correct branch counter info on hybrid 2024-09-11 13:08:46 -03:00
env.h perf env: Find correct branch counter info on hybrid 2024-09-11 13:08:46 -03:00
event.c perf buildid-list: Use perf_tool__init 2024-08-12 18:07:10 -03:00
event.h perf buildid-list: Use perf_tool__init 2024-08-12 18:07:10 -03:00
events_stats.h perf tools: Print lost samples due to BPF filter 2024-08-28 18:07:20 -03:00
evlist.c perf trace: Fix perf trace -p <PID> 2024-08-28 18:07:21 -03:00
evlist.h perf evlist: Introduce method to find if there is a bpf-output event 2024-08-28 18:07:21 -03:00
evsel_config.h
evsel_fprintf.c perf python: Remove PYTHON_PERF ifdefs 2024-08-01 18:55:55 -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 evsel: Add accessor for tool_event 2024-09-11 11:28:27 -03:00
evsel.h perf evsel: Add accessor for tool_event 2024-09-11 11:28:27 -03:00
evswitch.c
evswitch.h perf: Various spelling fixes 2023-01-23 10:00:47 -03:00
expr.c perf: parse-events: Fix compilation error while defining DEBUG_PARSER 2024-06-06 00:19:36 -07: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
fncache.h
ftrace.h perf ftrace: Add 'profile' command 2024-07-31 16:58:18 -03: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: remove unused struct 'options' 2024-06-03 22:07:52 -07:00
genelf.h perf genelf: Fix compiling with libelf on rv32 2024-04-18 22:22:51 -03:00
generate-cmdlist.sh perf help: Use HAVE_LIBTRACEEVENT to filter out unsupported commands 2023-01-02 11:51:53 -03:00
get_current_dir_name.c perf tools: Fixup get_current_dir_name() compilation 2021-08-30 10:06:16 -03:00
get_current_dir_name.h
hashmap.c libbpf: Hashmap interface update to allow both long and void* keys/values 2022-11-09 20:45:14 -08:00
hashmap.h perf tools: Update copy of libbpf's hashmap.c 2023-09-11 10:31:02 -03:00
header.c perf header: Remove repipe option 2024-08-30 09:24:27 -03:00
header.h perf header: Remove repipe option 2024-08-30 09:24:27 -03: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 perf auxtrace arm64: Add support for parsing HiSilicon PCIe Trace packet 2022-10-15 10:13:16 -03:00
hist.c perf report: Fix segfault when 'sym' sort key is not used 2024-08-28 18:20:38 -03:00
hist.h perf tools: Print lost samples due to BPF filter 2024-08-28 18:07:20 -03:00
intel-bts.c perf tool: Constify tool pointers 2024-08-12 18:05:14 -03:00
intel-bts.h
intel-pt.c perf tool: Constify tool pointers 2024-08-12 18:05:14 -03:00
intel-pt.h perf pmu: Lazily compute default config 2023-10-17 12:40:50 -07:00
intel-tpebs.c perf stat: Fork and launch 'perf record' when 'perf stat' needs to get retire latency value for a metric. 2024-08-13 15:24:48 -03:00
intel-tpebs.h perf stat: Fork and launch 'perf record' when 'perf stat' needs to get retire latency value for a metric. 2024-08-13 15:24:48 -03:00
intlist.c
intlist.h
iostat.c perf stat: Pass through 'struct outstate' 2022-11-24 09:40:37 -03:00
iostat.h perf stat: Pass through 'struct outstate' 2022-11-24 09:40:37 -03:00
jit.h perf jit: Constify filename argument 2024-08-19 14:51:46 -03:00
jitdump.c perf jit: Constify filename argument 2024-08-19 14:51:46 -03:00
jitdump.h
kvm-stat.h perf kvm: Reference count 'struct kvm_info' 2023-03-21 10:06:05 -03:00
kwork.h perf kwork top: Implements BPF-based cpu usage statistics 2023-09-12 17:31:59 -03:00
levenshtein.c perf tools: Fix various typos in comments 2021-03-23 17:13:43 -03:00
levenshtein.h
llvm-c-helpers.cpp perf annotate: LLVM-based disassembler 2024-09-03 10:39:20 -03:00
llvm-c-helpers.h perf annotate: LLVM-based disassembler 2024-09-03 10:39:20 -03:00
lock-contention.h perf lock contention: Add -G/--cgroup-filter option 2023-09-12 17:32:00 -03:00
lzma.c perf lzma: Convert some pr_err() to pr_debug() as callers already use pr_debug() 2023-08-22 16:53:32 -03:00
machine.c perf callchain: Allow symbols to be optional when resolving a callchain 2024-09-10 17:32:47 -03:00
machine.h perf callchain: Allow symbols to be optional when resolving a callchain 2024-09-10 17:32:47 -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
map.c perf inject: Lazy build-id mmap2 event insertion 2024-09-10 17:32:47 -03:00
map.h perf inject: Lazy build-id mmap2 event insertion 2024-09-10 17:32:47 -03:00
maps.c perf maps: Add/use a sorted insert for fixup overlap and insert 2024-06-06 23:31:30 -07:00
maps.h perf maps: Locking tidy up of nr_maps 2024-02-12 12:35:41 -08:00
mem2node.c
mem2node.h
mem-events.c perf mem: Fix missed p-core mem events on ADL and RPL 2024-09-06 11:45:17 -03:00
mem-events.h perf mem: Fix missed p-core mem events on ADL and RPL 2024-09-06 11:45:17 -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
memswap.c
memswap.h
metricgroup.c perf pmus: Fake PMU clean up 2024-09-11 11:27:42 -03:00
metricgroup.h perf stat: Add new field in stat_config to enable hardware aware grouping 2024-04-18 22:22:51 -03:00
mmap.c perf python: Remove PYTHON_PERF ifdefs 2024-08-01 18:55:55 -03:00
mmap.h perf mmap: Lazily initialize zstd streams to save memory when not using it 2023-11-28 14:25:06 -03:00
mutex.c perf mutex: Add thread safety annotations 2022-10-04 08:55:20 -03:00
mutex.h perf mutex: Add thread safety annotations 2022-10-04 08:55:20 -03:00
namespaces.c perf namespaces: Introduce nsinfo__mntns_path() accessor to avoid accessing ->mntns_path directly 2023-04-17 22:22:24 -03:00
namespaces.h perf namespaces: Add reference count checking 2023-04-17 18:51:57 -03:00
off_cpu.h perf offcpu: Accept allowed sample types only 2022-06-28 11:45:45 -03:00
ordered-events.c tools: Rename __fallthrough to fallthrough 2023-04-06 21:41:00 -03:00
ordered-events.h perf ordered_events: Add ordered_events__last_flush_time() 2022-07-20 11:07:30 -03:00
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 pmus: Fake PMU clean up 2024-09-11 11:27:42 -03:00
parse-events.h perf pmus: Fake PMU clean up 2024-09-11 11:27:42 -03:00
parse-events.l perf parse-events: Add a retirement latency modifier 2024-08-12 18:15:27 -03:00
parse-events.y Revert "perf parse-events: Prefer sysfs/JSON hardware events over legacy" 2024-05-26 08:41:34 -03: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 perf tools: Add missing newline at the end of header file 2021-08-24 15:01:31 -03:00
path.c perf path: Make mkpath thread safe, remove 16384 bytes from .bss 2023-05-28 10:24:14 -03:00
path.h perf test: Shell - Limit to only run executable scripts in tests 2022-04-11 16:39:49 -03:00
perf_api_probe.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
perf_api_probe.h perf record: Move probing cgroup sampling support 2021-06-01 10:32:00 -03:00
perf_event_attr_fprintf.c perf tools: Add/use PMU reverse lookup from config to name 2024-03-21 13:53:45 -03: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
perf-hooks-list.h
perf-hooks.c
perf-hooks.h
PERF-VERSION-GEN perf tools: Don't include signature in version strings 2023-01-02 12:34:06 -03:00
pfm.c perf list pfm: Retry supported test with exclude_kernel 2023-09-12 17:32:00 -03:00
pfm.h perf list: List callback support for libpfm 2022-11-24 10:04:52 -03:00
pmu.c perf pmu: To info add event_type_desc 2024-09-11 11:29:20 -03:00
pmu.h perf pmu: To info add event_type_desc 2024-09-11 11:29:20 -03:00
pmu.l perf pmu: Make parser reentrant 2023-04-06 21:40:28 -03:00
pmu.y perf pmu: Add YYDEBUG 2023-09-12 17:47:00 -03:00
pmus.c perf pmu: To info add event_type_desc 2024-09-11 11:29:20 -03:00
pmus.h perf pmus: Fake PMU clean up 2024-09-11 11:27:42 -03:00
print_binary.c
print_binary.h
print_insn.c perf annotate: Use capstone_init and remove open_capstone_handle from disasm.c 2024-07-31 16:12: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
print-events.c perf list: Give clues if failed to open tracing events directory 2024-08-01 12:11:33 -03:00
print-events.h perf pmus: Skip duplicate PMUs and don't print list suffix by default 2023-08-29 14:16:14 -03:00
probe-event.c perf dso: Add reference count checking and accessor functions 2024-05-06 15:28:49 -03:00
probe-event.h perf probe: Make synthesize_perf_probe_point() private to probe-event.c 2023-08-07 16:40:29 -03:00
probe-file.c perf probe-file: Delete namelist in del_events() on the error path 2021-07-18 09:27:37 -03:00
probe-file.h
probe-finder.c bitops: make BYTES_TO_BITS() treewide-available 2024-04-01 10:49:27 +01:00
probe-finder.h perf tools: Add util/debuginfo.[ch] files 2023-11-10 09:03:54 -03:00
pstack.c
pstack.h
python.c perf python: Fix the build on 32-bit arm by including missing "util/sample.h" 2024-08-19 14:44:21 -03:00
rb_resort.h perf trace: Ignore thread hashing in summary 2024-03-03 22:51:18 -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: Reuse target::initial_delay 2023-03-13 14:52:14 -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 debug mode that uses a mutex 2023-10-25 13:35:35 -07:00
rwsem.h perf rwsem: Add debug mode that uses a mutex 2023-10-25 13:35:35 -07: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 tool: Constify tool pointers 2024-08-12 18:05:14 -03:00
s390-cpumsf.h
s390-sample-raw.c perf report: Remove warning on missing raw data for s390 2023-11-27 15:38:37 -03:00
sample-raw.c perf report: Add support to print a textual representation of IBS raw sample data 2021-09-10 18:15:21 -03:00
sample-raw.h perf report: Add support to print a textual representation of IBS raw sample data 2021-09-10 18:15:21 -03:00
sample.h perf tools: Add branch counter knob 2023-11-09 13:47:50 -03:00
session.c perf env: Find correct branch counter info on hybrid 2024-09-11 13:08:46 -03:00
session.h perf inject: Overhaul handling of pipe files 2024-08-30 09:23:51 -03:00
setns.c
setup.py perf python: Disable -Wno-cast-function-type-mismatch if present on clang 2024-08-22 17:26:50 -03: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 evlist: Rename cpus to user_requested_cpus 2022-04-01 16:19:35 -03:00
smt.c perf expr: Make the online topology accessible globally 2023-02-19 08:03:12 -03:00
smt.h perf expr: Make the online topology accessible globally 2023-02-19 08:03:12 -03:00
sort.c perf annotate-data: Add 'typecln' sort key 2024-08-21 11:48:43 -03:00
sort.h perf annotate-data: Add 'typecln' sort key 2024-08-21 11:48:43 -03:00
spark.c
spark.h
srccode.c perf srccode: Use list_move() instead of equivalent list_del() + list_add() sequence 2021-06-08 09:36:36 -03:00
srccode.h
srcline.c perf report: Support LLVM for addr2line() 2024-09-03 10:15:16 -03:00
srcline.h perf srcline: Add a timeout to reading from addr2line 2023-06-14 18:19:06 -03:00
stat-display.c perf stat: Display iostat headers correctly 2024-08-16 19:35:18 -03:00
stat-shadow.c perf evsel: Add accessor for tool_event 2024-09-11 11:28:27 -03:00
stat.c perf cpumap: Clean up use of perf_cpu_map__has_any_cpu_or_is_empty 2024-03-21 10:41:28 -03:00
stat.h perf stat: Add new field in stat_config to enable hardware aware grouping 2024-04-18 22:22:51 -03:00
strbuf.c
strbuf.h perf tools: Fix various typos in comments 2021-03-23 17:13:43 -03:00
stream.c libperf: Move 'idx' from tools/perf to perf_evsel::idx 2021-07-09 14:04:28 -03:00
stream.h
strfilter.c tools: Rename __fallthrough to fallthrough 2023-04-06 21:41:00 -03:00
strfilter.h perf tools: Fix various typos in comments 2021-03-23 17:13:43 -03:00
string2.h perf util: Add a function for replacing characters in a string 2023-09-12 17:32:00 -03:00
string.c perf util: Add a function for replacing characters in a string 2023-09-12 17:32:00 -03:00
strlist.c
strlist.h
svghelper.c perf cpumap: Use perf_cpu_map__for_each_cpu when possible 2024-03-21 10:41:28 -03:00
svghelper.h
symbol_conf.h perf script: add --addr2line option 2024-08-12 13:59:22 -03:00
symbol_fprintf.c perf dso: Add reference count checking and accessor functions 2024-05-06 15:28:49 -03:00
symbol-elf.c perf symbol-elf: dso__load_sym_internal() reference count fixes 2024-05-06 16:07:30 -03:00
symbol-minimal.c perf dso: Add reference count checking and accessor functions 2024-05-06 15:28:49 -03:00
symbol.c perf symbol: Set binary_type of dso when loading 2024-09-22 23:46:18 +02:00
symbol.h perf mem-info: Move mem-info out of mem-events and symbol 2024-05-07 18:06:44 -03:00
symsrc.h perf symbols: Allow for static executables with .plt 2023-02-01 21:51:51 -03:00
synthetic-events.c perf inject: Add new mmap2-buildid-all option 2024-09-10 17:32:47 -03:00
synthetic-events.h perf inject: Add new mmap2-buildid-all option 2024-09-10 17:32:47 -03:00
syscalltbl.c perf tools: Build x86 32-bit syscall table from arch/x86/entry/syscalls/syscall_32.tbl 2024-09-02 11:13:40 -03:00
syscalltbl.h perf trace: Fix iteration of syscall ids in syscalltbl->entries 2024-07-12 09:49:02 -07:00
target.c
target.h perf target: Remove unused hybrid value 2023-05-27 09:38:59 -03:00
term.c
term.h
thread_map.c perf thread_map: Skip exited threads when scanning /proc 2024-02-22 09:11:03 -08:00
thread_map.h perf thread_map: Reduce exposure of libperf internal API 2022-11-16 12:17:15 -03:00
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 perf tools: Remove duplicate struct forward declarations 2021-03-25 08:59:10 -03:00
thread.c perf callchain: Fix stitch LBR memory leaks 2024-08-08 17:30:27 -03:00
thread.h perf callchain: Fix stitch LBR memory leaks 2024-08-08 17:30:27 -03:00
threads.c perf threads: Switch from rbtree to hashmap 2024-03-03 22:52:04 -08: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 tool: Remove perf_tool__fill_defaults() 2024-08-12 18:13:58 -03:00
tool.h perf tool: Remove perf_tool__fill_defaults() 2024-08-12 18:13:58 -03:00
top.c perf top: Avoid repeated function calls to perf_cpu_map__nr(). 2023-12-18 21:34:39 -03:00
top.h perf top: Convert to the global annotation_options 2023-12-07 16:47:55 -03:00
topdown.c perf stat: Implement --topdown using json metrics 2023-02-19 08:07:24 -03:00
topdown.h perf stat: Implement --topdown using json metrics 2023-02-19 08:07:24 -03:00
trace_augment.h perf trace: Pretty print buffer data 2024-09-10 09:52:13 -03: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 evsel: Rename get_states() to parse_task_states() and make it public 2024-02-01 22:10:27 -08:00
trace-event-read.c perf build: Use libtraceevent from the system 2022-12-14 11:16:12 -03:00
trace-event-scripting.c perf script: Fix Python support when no libtraceevent 2023-03-15 10:27:07 -03:00
trace-event.c perf build: Use libtraceevent from the system 2022-12-14 11:16:12 -03:00
trace-event.h perf evsel: Rename get_states() to parse_task_states() and make it public 2024-02-01 22:10:27 -08: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 tool: Constify tool pointers 2024-08-12 18:05:14 -03:00
tsc.h perf tsc: Add arch TSC frequency information 2022-07-25 12:28:00 -03:00
units.c perf stat: Improve readability of shadow stats 2021-03-15 11:36:54 -03:00
units.h perf stat: Improve readability of shadow stats 2021-03-15 11:36:54 -03:00
unwind-libdw.c perf dso: Fix address sanitizer build 2024-07-12 09:38:41 -07:00
unwind-libdw.h perf unwind: Don't show unwind error messages when augmenting frame pointer stack 2022-04-09 12:34:29 -03:00
unwind-libunwind-local.c perf dso: Fix build when libunwind is enabled 2024-07-17 13:17:57 -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 perf usage: Move usage strings 2023-04-10 19:20:53 -03:00
util.c perf cap: Tidy up and improve capability testing 2024-08-20 17:53:12 -03:00
util.h perf list: Add scandirat compatibility function 2024-02-22 09:11:41 -08:00
values.c
values.h perf hist: Move histogram related code to hist.h 2024-04-17 12:21:39 -03:00
vdso.c perf vdso: Missed put on 32-bit dsos 2024-09-27 15:38:52 -03:00
vdso.h
zlib.c
zstd.c perf mmap: Lazily initialize zstd streams to save memory when not using it 2023-11-28 14:25:06 -03:00