path: root/tools/perf/builtin-top.c
diff options
authorNamhyung Kim <>2015-09-30 10:45:25 +0900
committerArnaldo Carvalho de Melo <>2015-10-01 09:54:33 -0300
commit4b37af595742977f1bdd8c0fd0f3e6e55b36e7b7 (patch)
treee1b78253e3b4dfa9ce6c301baac105231ae7440e /tools/perf/builtin-top.c
parente5bed564485b340d87f2d8945643a393e55b8225 (diff)
perf top: Fix unresolved comm when -s comm is used
The perf top uses 'dso,symbol' sort keys by default so it overlooked a problem in task's comm resolving. When the sort key contains 'comm', some task's comm is not shown properly. This is because the perf_top__mmap_read_idx() checks the cpumode value improperly. The cpumode value of non-sample events are 0 (PERF_RECORD_MISC_CPUMODE_ UNKNOWN) so the events will be ignored by the switch statement. This patch allows it for non-sample events. Signed-off-by: Namhyung Kim <> Cc: David Ahern <> Cc: Jiri Olsa <> Cc: Peter Zijlstra <> Link: Signed-off-by: Arnaldo Carvalho de Melo <>
Diffstat (limited to 'tools/perf/builtin-top.c')
1 files changed, 5 insertions, 2 deletions
diff --git a/tools/perf/builtin-top.c b/tools/perf/builtin-top.c
index 38d4d6cac823..ae4c6420300b 100644
--- a/tools/perf/builtin-top.c
+++ b/tools/perf/builtin-top.c
@@ -857,9 +857,12 @@ static void perf_top__mmap_read_idx(struct perf_top *top, int idx)
* TODO: we don't process guest user from host side
* except simple counting.
- /* Fall thru */
- default:
goto next_event;
+ default:
+ if (event->header.type == PERF_RECORD_SAMPLE)
+ goto next_event;
+ machine = &session->;
+ break;