[<prev] [next>] [day] [month] [year] [list]
Message-ID: <tip-e8ife8djvvvwmeze3s4yodii@git.kernel.org>
Date: Wed, 13 Jun 2018 23:19:34 -0700
From: tip-bot for Arnaldo Carvalho de Melo <tipbot@...or.com>
To: linux-tip-commits@...r.kernel.org
Cc: tglx@...utronix.de, dsahern@...il.com, yao.jin@...ux.intel.com,
acme@...hat.com, adrian.hunter@...el.com,
linux-kernel@...r.kernel.org, namhyung@...nel.org, hpa@...or.com,
mingo@...nel.org, wangnan0@...wei.com, jolsa@...nel.org
Subject: [tip:perf/urgent] perf hists: Make hist_entry__has_callchains()
work with 'perf c2c'
Commit-ID: e5654455795f2f89328f7b301dacb6926e57e2b8
Gitweb: https://git.kernel.org/tip/e5654455795f2f89328f7b301dacb6926e57e2b8
Author: Arnaldo Carvalho de Melo <acme@...hat.com>
AuthorDate: Thu, 7 Jun 2018 14:27:19 -0300
Committer: Arnaldo Carvalho de Melo <acme@...hat.com>
CommitDate: Thu, 7 Jun 2018 14:27:19 -0300
perf hists: Make hist_entry__has_callchains() work with 'perf c2c'
Since 'perf c2c' uses 'struct hists' not allocated together with a
'struct perf_evsel' instance, we can't go from a 'struct hist_entry'
pointer to a 'struct perf_evsel' via he->hists, so, instead, check if
space was set aside for hist_entry->callchain[0] at hist_entry__new()
time.
Reported-by: Jin Yao <yao.jin@...ux.intel.com>
Reported-by: Jiri Olsa <jolsa@...nel.org>
Cc: Adrian Hunter <adrian.hunter@...el.com>
Cc: David Ahern <dsahern@...il.com>
Cc: Namhyung Kim <namhyung@...nel.org>
Cc: Wang Nan <wangnan0@...wei.com>
Fixes: fabd37b837f6 ("perf hists: Check if a hist_entry has callchains before using them")
Link: https://lkml.kernel.org/n/tip-e8ife8djvvvwmeze3s4yodii@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@...hat.com>
---
tools/perf/util/sort.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/perf/util/sort.h b/tools/perf/util/sort.h
index 9ab9257ed887..8bf302cafcec 100644
--- a/tools/perf/util/sort.h
+++ b/tools/perf/util/sort.h
@@ -155,7 +155,7 @@ struct hist_entry {
static __pure inline bool hist_entry__has_callchains(struct hist_entry *he)
{
- return hists__has_callchains(he->hists);
+ return he->callchain_size != 0;
}
static inline bool hist_entry__has_pairs(struct hist_entry *he)
Powered by blists - more mailing lists