perf annotate: Replace symbol__alloc_hists() with symbol__hists()
tip-bot for Arnaldo Carvalho de Melo
merge botCommit-ID: 14c8dde170cc1ba6754a1275ff378092ab36b257 Gitweb: https://git.kernel.org/tip/14c8dde170cc1ba6754a1275ff378092ab36b257 Author: Arnaldo Carvalho de Melo <[email protected]> AuthorDate: Thu, 24 May 2018 17:33:18 -0300 Committer: Arnaldo Carvalho de Melo <[email protected]> CommitDate: Mon, 4 Jun 2018 10:28:52 -0300
perf annotate: Replace symbol__alloc_hists() with symbol__hists()
Its a bit shorter, so ditch the old symbol__alloc_hists() function.
Cc Adrian Hunter <[email protected]>
Cc David Ahern <[email protected]>
Cc Jiri Olsa <[email protected]>
Cc Namhyung Kim <[email protected]>
Cc Wang Nan <[email protected]>
Signed-off-by Arnaldo Carvalho de Melo <[email protected]>
--- tools/perf/builtin-top.c | 8 +------- tools/perf/ui/browsers/annotate.c | 2 +- tools/perf/util/annotate.c | 21 ++------------------- tools/perf/util/annotate.h | 2 +- 4 files changed, 5 insertions(+), 28 deletions(-)
tools/perf/builtin-top.c +1 -7
@@ -123,14 +123,9 @@ static int perf_top__parse_source(struct perf_top *top, struct hist_entry *he) } notes =symbol__annotation (sym); -if (notes->src !=NULL ) { -pthread_mutex_lock (¬es->lock); - goto out_assign; - } -pthread_mutex_lock (¬es->lock); -if (symbol__alloc_hist (sym) <0 ) { +if (!symbol__hists (sym, top->evlist->nr_entries)) {pthread_mutex_unlock (¬es->lock);pr_err ("Not enough memory for annotating '%s' symbol!\n" , sym->name);
@@ -140,7 +135,6 @@ static int perf_top__parse_source(struct perf_top *top, struct hist_entry *he) err =symbol__annotate (sym, map, evsel,0 ,NULL );if (err ==0 ) { -out_assign: top->sym_filter_entry = he; }else {char msg[BUFSIZ ];
tools/perf/ui/browsers/annotate.c +1 -1
@@ -410,7 +410,7 @@ static bool annotate_browser__callq(struct annotate_browser *browser, notes =symbol__annotation (dl->ops.target.sym);pthread_mutex_lock (¬es->lock); -if (notes->src ==NULL &&symbol__alloc_hist (dl->ops.target.sym) <0 ) { +if (!symbol__hists (dl->ops.target.sym, evsel->evlist->nr_entries)) {pthread_mutex_unlock (¬es->lock);ui__warning ("Not enough memory for annotating '%s' symbol!\n" , dl->ops.target.sym->name);
tools/perf/util/annotate.c +2 -19
@@ -689,7 +689,7 @@ static struct annotated_source *annotated_source__new(void)return src; } -static void annotated_source__delete (struct annotated_source *src) +static __maybe_unused void annotated_source__delete (struct annotated_source *src) {if (src ==NULL )return ;
@@ -729,23 +729,6 @@ static int annotated_source__alloc_histograms(struct annotated_source *src,return src->histograms ?0 :-1 ; } -int symbol__alloc_hist (struct symbol *sym) -{ -size_t size =symbol__size (sym); -struct annotation *notes =symbol__annotation (sym); - - notes->src =annotated_source__new (); -if (notes->src ==NULL ) -return -1 ; - -if (annotated_source__alloc_histograms (notes->src, size, symbol_conf.nr_events) <0 ) { -annotated_source__delete (notes->src); - notes->src =NULL ; -return -1 ; - } -return 0 ; -} -/* The cycles histogram is lazily allocated. */ static int symbol__alloc_hist_cycles (struct symbol *sym) {
@@ -868,7 +851,7 @@ alloc_cycles_hist:return notes->src->cycles_hist; } -static struct annotated_source *symbol__hists (struct symbol *sym,int nr_hists) +struct annotated_source *symbol__hists (struct symbol *sym,int nr_hists) {struct annotation *notes =symbol__annotation (sym);
tools/perf/util/annotate.h +1 -1
@@ -292,7 +292,7 @@ int addr_map_symbol__account_cycles(struct addr_map_symbol *ams,int hist_entry__inc_addr_samples (struct hist_entry *he,struct perf_sample *sample,struct perf_evsel *evsel,u64 addr); -int symbol__alloc_hist (struct symbol *sym); +struct annotated_source *symbol__hists (struct symbol *sym,int nr_hists);void symbol__annotate_zero_histograms (struct symbol *sym); int symbol__annotate(struct symbol *sym, struct map *map,