Messages in this thread | | | Date | Fri, 11 Dec 2015 08:37:46 -0300 | From | Arnaldo Carvalho de Melo <> | Subject | Re: [PATCH 4/4] perf top: Cleanup condition in perf_top__record_precise_ip() |
| |
Em Fri, Dec 11, 2015 at 11:56:56AM +0900, Namhyung Kim escreveu: > 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> > --- > tools/perf/builtin-top.c | 9 ++++----- > 1 file changed, 4 insertions(+), 5 deletions(-) > > diff --git a/tools/perf/builtin-top.c b/tools/perf/builtin-top.c > index f447e5531f8b..e67991eb9304 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, > int counter, u64 ip) > { > struct annotation *notes; > - struct symbol *sym; > + struct symbol *sym = he->ms.sym; > int err = 0; > > - if (he == NULL || he->ms.sym == NULL || > - ((top->sym_filter_entry == NULL || > - top->sym_filter_entry->ms.sym != he->ms.sym) && use_browser != 1)) > + if (sym == NULL || (use_browser == 0 && > + (top->sym_filter_entry == NULL || > + top->sym_filter_entry->ms.sym != he->ms.sym)))
Since you're simplifying this... you missed replacing he->ms.sym with sym in this last line, doing that.
> return; > > - sym = he->ms.sym; > notes = symbol__annotation(sym); > > if (pthread_mutex_trylock(¬es->lock)) > -- > 2.6.4
| |