mirror of
https://github.com/torvalds/linux.git
synced 2026-11-10 17:11:02 +01:00
Port arm-cs-trace-disasm.py to a standalone script in tools/perf/python/
using the perf module directly.
Improvements compared to the legacy script:
- Encapsulate trace disassembly state in a TraceDisasm class.
- Default to itrace="b" when creating perf.session() (overridable via
--itrace or PERF_ITRACE) so all CoreSight branch samples are
synthesized without requiring --itrace=b on the command line.
- Automatically search standard kernel debug paths (find_vmlinux())
when -k/--vmlinux is not specified, and query
perf.config_get("annotate.objdump") for the default objdump binary.
- Bound DISASM_CACHE memory consumption by evicting the cache at 1024
entries and skipping caching of oversized (> 512 lines) objdump
outputs.
- Use sample.srccode() from the perf extension module to annotate
disassembly output with source filenames, line numbers, and source
lines.
Update the ARM CoreSight disassembly shell test
(test_arm_coresight_disasm.sh) to invoke the standalone script.
Assisted-by: Antigravity:gemini-3.1-pro
Reviewed-by: James Clark <james.clark@linaro.org>
Signed-off-by: Ian Rogers <irogers@google.com>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
|
||
|---|---|---|
| .. | ||
| arm-cs-trace-disasm.py | ||
| check-perf-trace.py | ||
| compaction-times.py | ||
| counting.py | ||
| event_analyzing_sample.py | ||
| failed-syscalls-by-pid.py | ||
| failed-syscalls.py | ||
| flamegraph.py | ||
| futex-contention.py | ||
| gecko.py | ||
| ilist.py | ||
| mem-phys-addr.py | ||
| net_dropmonitor.py | ||
| netdev-times.py | ||
| perf_live.py | ||
| perf.pyi | ||
| rw-by-file.py | ||
| rw-by-pid.py | ||
| rwtop.py | ||
| sched-migration.py | ||
| SchedGui.py | ||
| sctop.py | ||
| stackcollapse.py | ||
| stat-cpi.py | ||
| syscall-counts-by-pid.py | ||
| syscall-counts.py | ||
| task-analyzer.py | ||
| tracepoint.py | ||
| treport.py | ||
| twatch.py | ||
| wakeup-latency.py | ||