diff options
author | Namhyung Kim <namhyung@kernel.org> | 2015-12-10 21:56:53 -0500 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2015-12-11 06:33:18 -0500 |
commit | 64226bcf64629996948dc03c38594f00511bfc2b (patch) | |
tree | 4fdcf5f90e4ace753bf412bb22c71d42cbbcbd53 /tools/perf | |
parent | e7a7865cc0da306542db0b9205cb0a467f59e33d (diff) |
perf top: Do not convert address for perf_top__record_precise_ip()
We call map->unmap_ip() before the function and call map->map_ip()
inside the function. This is meaningless and look strange since only
one of the two checks 'map'. Let's use al->addr directly.
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/1449802616-16170-1-git-send-email-namhyung@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf')
-rw-r--r-- | tools/perf/builtin-top.c | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/tools/perf/builtin-top.c b/tools/perf/builtin-top.c index 785aa2dd8f0b..3b0978e5578a 100644 --- a/tools/perf/builtin-top.c +++ b/tools/perf/builtin-top.c | |||
@@ -189,8 +189,6 @@ static void perf_top__record_precise_ip(struct perf_top *top, | |||
189 | if (pthread_mutex_trylock(¬es->lock)) | 189 | if (pthread_mutex_trylock(¬es->lock)) |
190 | return; | 190 | return; |
191 | 191 | ||
192 | ip = he->ms.map->map_ip(he->ms.map, ip); | ||
193 | |||
194 | if (ui__has_annotation()) | 192 | if (ui__has_annotation()) |
195 | err = hist_entry__inc_addr_samples(he, counter, ip); | 193 | err = hist_entry__inc_addr_samples(he, counter, ip); |
196 | 194 | ||
@@ -687,14 +685,8 @@ static int hist_iter__top_callback(struct hist_entry_iter *iter, | |||
687 | struct hist_entry *he = iter->he; | 685 | struct hist_entry *he = iter->he; |
688 | struct perf_evsel *evsel = iter->evsel; | 686 | struct perf_evsel *evsel = iter->evsel; |
689 | 687 | ||
690 | if (sort__has_sym && single) { | 688 | if (sort__has_sym && single) |
691 | u64 ip = al->addr; | 689 | perf_top__record_precise_ip(top, he, evsel->idx, al->addr); |
692 | |||
693 | if (al->map) | ||
694 | ip = al->map->unmap_ip(al->map, ip); | ||
695 | |||
696 | perf_top__record_precise_ip(top, he, evsel->idx, ip); | ||
697 | } | ||
698 | 690 | ||
699 | hist__account_cycles(iter->sample->branch_stack, al, iter->sample, | 691 | hist__account_cycles(iter->sample->branch_stack, al, iter->sample, |
700 | !(top->record_opts.branch_stack & PERF_SAMPLE_BRANCH_ANY)); | 692 | !(top->record_opts.branch_stack & PERF_SAMPLE_BRANCH_ANY)); |