public inbox for linux-perf-users@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v1 0/4] perf e_flags support for CSKY
@ 2026-01-23 22:22 Ian Rogers
  2026-01-23 22:22 ` [PATCH v1 1/4] perf dso: Factor out e_machine reading for use in thread Ian Rogers
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Ian Rogers @ 2026-01-23 22:22 UTC (permalink / raw)
  To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
	Namhyung Kim, Alexander Shishkin, Jiri Olsa, Ian Rogers,
	Adrian Hunter, James Clark, Guo Ren, Tianyou Li, Athira Rajeev,
	Stephen Brennan, Aditya Bodkhe, Chun-Tse Shao, Swapnil Sapkal,
	Howard Chu, Sergei Trofimovich, Shimin Guo, linux-perf-users,
	linux-kernel, linux-csky

The ELF machine type for CSKY is insufficent to describe the perf
registers, the e_flags from the ELF header is also required. Expand
the thread__e_machine and associated APIs to optionally fill in an
e_flags output field. For uses in `perf trace` the e_flags doesn't
matter and the e_flags needn't be computed. For `perf annotate` the
e_flags are computed and passed around, however, this is optimized so
the e_flags are only read for EM_CSKY. Call chain unwinding needs to
know about perf registers during recording and in the unwinding logic,
this is similarly wired up with the e_flags.

Ian Rogers (4):
  perf dso: Factor out e_machine reading for use in thread
  perf thread: Add optional e_flags output argument to thread__e_machine
  perf perf_regs: Accurately compute register names for CSKY
  perf unwind-libdw: Wire up e_flags for CSKY

 tools/perf/builtin-script.c                   |  38 +++--
 tools/perf/builtin-trace.c                    |  12 +-
 tools/perf/util/annotate.c                    |   5 +-
 tools/perf/util/disasm.c                      |   5 +-
 tools/perf/util/disasm.h                      |   2 +-
 tools/perf/util/dso.c                         | 139 ++++++++++++------
 tools/perf/util/dso.h                         |  12 +-
 tools/perf/util/parse-regs-options.c          |   4 +-
 .../perf/util/perf-regs-arch/perf_regs_csky.c |  13 +-
 tools/perf/util/perf_regs.c                   |   4 +-
 tools/perf/util/perf_regs.h                   |   4 +-
 .../scripting-engines/trace-event-python.c    |  17 ++-
 tools/perf/util/session.c                     |  26 ++--
 tools/perf/util/thread.c                      |  62 +++++---
 tools/perf/util/thread.h                      |  16 +-
 tools/perf/util/unwind-libdw.c                |   9 +-
 tools/perf/util/unwind-libdw.h                |   1 +
 17 files changed, 244 insertions(+), 125 deletions(-)

-- 
2.52.0.457.g6b5491de43-goog


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2026-01-26 20:51 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-01-23 22:22 [PATCH v1 0/4] perf e_flags support for CSKY Ian Rogers
2026-01-23 22:22 ` [PATCH v1 1/4] perf dso: Factor out e_machine reading for use in thread Ian Rogers
2026-01-23 22:22 ` [PATCH v1 2/4] perf thread: Add optional e_flags output argument to thread__e_machine Ian Rogers
2026-01-23 22:22 ` [PATCH v1 3/4] perf perf_regs: Accurately compute register names for CSKY Ian Rogers
2026-01-23 22:22 ` [PATCH v1 4/4] perf unwind-libdw: Wire up e_flags " Ian Rogers
2026-01-26 20:51 ` [PATCH v1 0/4] perf e_flags support " Arnaldo Carvalho de Melo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox