diff options
author | Frederic Weisbecker <fweisbec@gmail.com> | 2009-10-08 21:04:17 +0200 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-10-08 21:10:21 +0200 |
commit | 97ea1a7fa62af0d8d49a0fc12796b0073537c9d8 (patch) | |
tree | 3be620dc044bd978e71b1bdd997d8e38a3c9b2a8 /tools/perf/util/thread.h | |
parent | perf tools: Improve kernel/modules symbol lookup (diff) | |
download | linux-97ea1a7fa62af0d8d49a0fc12796b0073537c9d8.tar.xz linux-97ea1a7fa62af0d8d49a0fc12796b0073537c9d8.zip |
perf tools: Fix thread comm resolution in perf sched
This reverts commit 9a92b479b2f088ee2d3194243f4c8e59b1b8c9c2 ("perf
tools: Improve thread comm resolution in perf sched") and fixes the
real bug.
The bug was elsewhere:
We are failing to resolve thread names in perf sched because the
table of threads we are building, on top of comm events, has a per
process granularity. But perf sched, unlike the other perf tools,
needs a per thread granularity as we are profiling every tasks
individually.
So fix it by building our threads table using the tid instead of
the pid as the thread identifier.
v2: Revert the previous fix - it is not really needed
Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Paul Mackerras <paulus@samba.org>
LKML-Reference: <1255028657-11158-1-git-send-email-fweisbec@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'tools/perf/util/thread.h')
-rw-r--r-- | tools/perf/util/thread.h | 3 |
1 files changed, 0 insertions, 3 deletions
diff --git a/tools/perf/util/thread.h b/tools/perf/util/thread.h index 75bc843950c4..845d9b62f96f 100644 --- a/tools/perf/util/thread.h +++ b/tools/perf/util/thread.h @@ -18,9 +18,6 @@ int thread__set_comm(struct thread *self, const char *comm); struct thread * threads__findnew(pid_t pid, struct rb_root *threads, struct thread **last_match); struct thread * -threads__findnew_nocomm(pid_t pid, struct rb_root *threads, - struct thread **last_match); -struct thread * register_idle_thread(struct rb_root *threads, struct thread **last_match); void thread__insert_map(struct thread *self, struct map *map); int thread__fork(struct thread *self, struct thread *parent); |