public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] perf: timechart: handle pthreads correctly
@ 2010-04-01 20:04 Andrew Isaacson
  0 siblings, 0 replies; only message in thread
From: Andrew Isaacson @ 2010-04-01 20:04 UTC (permalink / raw)
  To: linux-perf-users, linux-kernel

[-- Attachment #1: Type: text/plain, Size: 928 bytes --]

pthreads applications have multiple processes with the same "pid" but
different "tid" values.  This confuses timechart, because it's using
the "pid" value to track processes.

Switch to using "tid" to avoid this confusion.  For non-pthreads
applications tid == pid so there's no downside.

Signed-off-by: Andy Isaacson <adi@vmware.com>

---
I've attached a before.svg.gz and after.svg.gz showing the failure.

diff --git a/tools/perf/builtin-timechart.c b/tools/perf/builtin-timechart.c
index 0d4d8ff..5b925de 100644
--- a/tools/perf/builtin-timechart.c
+++ b/tools/perf/builtin-timechart.c
@@ -286,7 +286,7 @@ static int process_comm_event(event_t *event, struct perf_session *session __use
 
 static int process_fork_event(event_t *event, struct perf_session *session __used)
 {
-	pid_fork(event->fork.pid, event->fork.ppid, event->fork.time);
+	pid_fork(event->fork.tid, event->fork.ppid, event->fork.time);
 	return 0;
 }
 

[-- Attachment #2: after.svg.gz --]
[-- Type: application/octet-stream, Size: 12447 bytes --]

[-- Attachment #3: before.svg.gz --]
[-- Type: application/octet-stream, Size: 10731 bytes --]

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2010-04-01 20:04 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-04-01 20:04 [PATCH] perf: timechart: handle pthreads correctly Andrew Isaacson

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