diff options
author | Kan Liang <kan.liang@intel.com> | 2014-10-22 15:02:41 -0400 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2014-10-22 16:31:06 -0300 |
commit | 9ab1f50876dbb8b962db058259be7aae920d4c25 (patch) | |
tree | 942723e8fb014c5bb0f74afb630d033ff36fd0b6 /tools/perf | |
parent | 3b10ea7f922b538ba5dcb3d979a6b6b4d07daae2 (diff) |
perf diff: Add missing hists__init() call at tool start
It also uses hists/hist_entries, hists__init() should be called before
creating any evsels.
Otherwise no extra space will be allocated per perf_evsel nor this space
will be initialized when allocating a new perf_evsel instance, resulting
in reads/writes to non allocated space, oops. Fix it.
Signed-off-by: Kan Liang <kan.liang@intel.com>
Link: http://lkml.kernel.org/r/1414004561-22096-1-git-send-email-kan.liang@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf')
-rw-r--r-- | tools/perf/builtin-diff.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/tools/perf/builtin-diff.c b/tools/perf/builtin-diff.c index 8c5c11ca8c5..25114c9a680 100644 --- a/tools/perf/builtin-diff.c +++ b/tools/perf/builtin-diff.c @@ -1142,6 +1142,11 @@ static int data_init(int argc, const char **argv) int cmd_diff(int argc, const char **argv, const char *prefix __maybe_unused) { + int ret = hists__init(); + + if (ret < 0) + return ret; + perf_config(perf_default_config, NULL); argc = parse_options(argc, argv, options, diff_usage, 0); |