diff options
author | Namhyung Kim <namhyung@kernel.org> | 2015-12-10 21:56:56 -0500 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2015-12-11 06:38:10 -0500 |
commit | beefb8d0e556aaf3cb69168c5953e023ace6aa78 (patch) | |
tree | 8fb99a42d13d03812d5d7d6ce480d2c6cc215d51 /tools | |
parent | 448f13b2d18fdc8dbaada97442e8954dcb4ef8fa (diff) |
perf top: Cleanup condition in perf_top__record_precise_ip()
The 'he' cannot be NULL since it's caller hist_iter__top_callback() is
called only if iter->he is not NULL (see hist_entry_iter__add). So
setting 'sym' before the condition to simplify the code.
Also make it clearer that the top->symbol_filter_entry check is only
meaningful on stdio mode (i.e. when use_browser is 0).
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-4-git-send-email-namhyung@kernel.org
[ Complete the simplification replacing one more he->ms.sym with sym ]
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools')
-rw-r--r-- | tools/perf/builtin-top.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/tools/perf/builtin-top.c b/tools/perf/builtin-top.c index f447e5531f8b..92fe963e43c4 100644 --- a/tools/perf/builtin-top.c +++ b/tools/perf/builtin-top.c | |||
@@ -175,15 +175,14 @@ static void perf_top__record_precise_ip(struct perf_top *top, | |||
175 | int counter, u64 ip) | 175 | int counter, u64 ip) |
176 | { | 176 | { |
177 | struct annotation *notes; | 177 | struct annotation *notes; |
178 | struct symbol *sym; | 178 | struct symbol *sym = he->ms.sym; |
179 | int err = 0; | 179 | int err = 0; |
180 | 180 | ||
181 | if (he == NULL || he->ms.sym == NULL || | 181 | if (sym == NULL || (use_browser == 0 && |
182 | ((top->sym_filter_entry == NULL || | 182 | (top->sym_filter_entry == NULL || |
183 | top->sym_filter_entry->ms.sym != he->ms.sym) && use_browser != 1)) | 183 | top->sym_filter_entry->ms.sym != sym))) |
184 | return; | 184 | return; |
185 | 185 | ||
186 | sym = he->ms.sym; | ||
187 | notes = symbol__annotation(sym); | 186 | notes = symbol__annotation(sym); |
188 | 187 | ||
189 | if (pthread_mutex_trylock(¬es->lock)) | 188 | if (pthread_mutex_trylock(¬es->lock)) |