Linux Perf Users
 help / color / mirror / Atom feed
* [PATCH] perf trace: always print return value for syscalls with set errpid
@ 2025-04-03 16:04 Anubhav Shelat
  2025-04-04  3:26 ` Howard Chu
  2025-05-18 18:02 ` Namhyung Kim
  0 siblings, 2 replies; 7+ messages in thread
From: Anubhav Shelat @ 2025-04-03 16:04 UTC (permalink / raw)
  To: mpetlan, acme, namhyung, irogers, linux-perf-users
  Cc: peterz, mingo, mark.rutland, alexander.shishkin, jolsa,
	adrian.hunter, kan.liang, dapeng1.mi, james.clark, Anubhav Shelat

Currently some syscalls that have errpid set to true do not print a
return value in perf trace. The syscalls that were consistently
observed were set_robust_list and rseq. This is because perf cannot find
their child process. This change ensures that the return value is always
printed.

Before:
     0.256 ( 0.001 ms): set_robust_list(head: 0x7f09c77dba20, len: 24)                        =
     0.259 ( 0.001 ms): rseq(rseq: 0x7f09c77dc0e0, rseq_len: 32, sig: 1392848979)             =
After:
     0.270 ( 0.002 ms): set_robust_list(head: 0x7f0bb14a6a20, len: 24)                        = 0
     0.273 ( 0.002 ms): rseq(rseq: 0x7f0bb14a70e0, rseq_len: 32, sig: 1392848979)             = 0

Signed-off-by: Anubhav Shelat <ashelat@redhat.com>
---
 tools/perf/builtin-trace.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/perf/builtin-trace.c b/tools/perf/builtin-trace.c
index 6ac51925ea42..c192f0219b2b 100644
--- a/tools/perf/builtin-trace.c
+++ b/tools/perf/builtin-trace.c
@@ -3005,8 +3005,8 @@ errno_print: {
 	else if (sc->fmt->errpid) {
 		struct thread *child = machine__find_thread(trace->host, ret, ret);
 
+		fprintf(trace->output, "%ld", ret);
 		if (child != NULL) {
-			fprintf(trace->output, "%ld", ret);
 			if (thread__comm_set(child))
 				fprintf(trace->output, " (%s)", thread__comm_str(child));
 			thread__put(child);
-- 
2.48.1


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

end of thread, other threads:[~2025-05-29 14:35 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-04-03 16:04 [PATCH] perf trace: always print return value for syscalls with set errpid Anubhav Shelat
2025-04-04  3:26 ` Howard Chu
2025-05-17 15:29   ` Howard Chu
2025-05-28 18:41   ` Arnaldo Carvalho de Melo
2025-05-29 14:35     ` Anubhav Shelat
2025-05-18 18:02 ` Namhyung Kim
     [not found]   ` <CA+G8DhK05FPgdLhN0LVYsDUTsJou4x4BxqycbPweGYgL_b4_VQ@mail.gmail.com>
2025-05-28 18:35     ` 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