[PATCH 0/5] arm-cs-trace-disasm.py/perf must accommodate non-zero DSO text offset

Steve Clevenger scclevenger at os.amperecomputing.com
Tue Aug 20 15:11:36 PDT 2024


From: "steve.c.clevenger.ampere" <scclevenger at os.amperecomputing.com>

Fedora 37 distributed shared binary and executable mapped files show a
zero text section offset. Starting with the Fedora 38 distribution, the
shared binary and executable mapped files show a non-zero text section
offset for some binaries. The text offset parameter is never passed into
the arm-cs-trace-disasm.py script to allow the script to adjust the
start/end address range passed to objdump. This adjustment is required
to correctly offset into the dso text section. Not doing so results in
an incorrect user instruction trace display for Fedora 38 (and later)
user trace output.

steve.c.clevenger.ampere (5):
  Add dso__is_pie call to identify ELF PIE
  Add dso__is_pie prototype
  Force MAPPING_TYPE__IDENTIY for PIE
  Add map pgoff to python dictionary based on MAPPING_TYPE
  Adjust objdump start/end range per map pgoff parameter

 .../scripts/python/arm-cs-trace-disasm.py     | 17 +++++-
 tools/perf/util/map.c                         |  5 +-
 .../scripting-engines/trace-event-python.c    | 13 ++++-
 tools/perf/util/symbol-elf.c                  | 55 +++++++++++++++++++
 tools/perf/util/symbol.h                      |  1 +
 5 files changed, 85 insertions(+), 6 deletions(-)

-- 
2.25.1




More information about the linux-arm-kernel mailing list