perf tools: Compare hists comm by addresses
authorFrederic Weisbecker <fweisbec@gmail.com>
Wed, 11 Sep 2013 15:18:09 +0000 (17:18 +0200)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Mon, 4 Nov 2013 15:14:59 +0000 (12:14 -0300)
Now that comm strings are allocated only once and refcounted to be shared
among threads, these can now be safely compared by addresses. This
should remove most hists collapses on post processing.

Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
Tested-by: Jiri Olsa <jolsa@redhat.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Stephane Eranian <eranian@google.com>
Link: http://lkml.kernel.org/r/1381468543-25334-8-git-send-email-namhyung@kernel.org
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
tools/perf/util/sort.c

index 835e8bdd869f9bed27e074ee3e770e8fe7e0444b..bf91d0e5c16e20fda56880629967038a41a29aea 100644 (file)
@@ -80,7 +80,8 @@ struct sort_entry sort_thread = {
 static int64_t
 sort__comm_cmp(struct hist_entry *left, struct hist_entry *right)
 {
-       return right->thread->tid - left->thread->tid;
+       /* Compare the addr that should be unique among comm */
+       return thread__comm_str(right->thread) - thread__comm_str(left->thread);
 }
 
 static int64_t