diff options
author | Namhyung Kim <namhyung@kernel.org> | 2015-09-30 13:34:00 +0900 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2015-10-01 09:54:33 -0300 |
commit | 208e7607459477432d3df52c32d4b961a96d4a94 (patch) | |
tree | ee8d95e7b684cdddd44620b024889c73d04508e5 /tools/perf/util/machine.c | |
parent | c53d138d41a7f33cf085762c64b4b61e8d223e1c (diff) | |
download | talos-obmc-linux-208e7607459477432d3df52c32d4b961a96d4a94.tar.gz talos-obmc-linux-208e7607459477432d3df52c32d4b961a96d4a94.zip |
perf report: Fix a bug on "--call-graph none" option
The patch f9db0d0f1b2c ("perf callchain: Allow disabling call graphs
per event") added an ability to enable/disable callchain recording per
event. But it had a problem when the enablement setting is changed at
'perf report' time using -g/--call-graph option.
For example, the following scenario will get a segfault.
$ perf record -ag sleep 1
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.500 MB perf.data (2555 samples) ]
$ perf report -g none
perf: Segmentation fault
-------- backtrace --------
perf[0x53a98a]
/usr/lib/libc.so.6(+0x335af)[0x7f4e91df95af]
This is because callchain_param.sort() callback was not set but it
tried to call the function as it had the PERF_SAMPLE_CALLCHAIN bit.
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Kan Liang <kan.liang@intel.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Fixes: f9db0d0f1b2c ("perf callchain: Allow disabling call graphs per event")
Link: http://lkml.kernel.org/r/1443587640-24242-1-git-send-email-namhyung@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/util/machine.c')
0 files changed, 0 insertions, 0 deletions