aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/util/event.h
diff options
context:
space:
mode:
authorNamhyung Kim <namhyung@kernel.org>2017-10-31 11:06:54 +0900
committerArnaldo Carvalho de Melo <acme@redhat.com>2017-11-01 11:44:38 -0300
commit7285cf3325b4a1dfb336d31eebc27dfbc30fb9aa (patch)
treeece6aeb203be9207ae16eb2ffb985fddc42db46d /tools/perf/util/event.h
parentperf srcline: Fix memory leak in addr2inlines() (diff)
downloadlinux-dev-7285cf3325b4a1dfb336d31eebc27dfbc30fb9aa.tar.xz
linux-dev-7285cf3325b4a1dfb336d31eebc27dfbc30fb9aa.zip
perf srcline: Show correct function name for srcline of callchains
When libbfd is not used, it doesn't show proper function name and reuse the original symbol of the sample. That's because it passes the original sym to inline_list__append(). As `addr2line -f` returns function names as well, use that to create an inline_sym and pass it to inline_list__append(). For example, following data shows that inlined entries of main have same name (main). Before: $ perf report -g srcline -q | head 45.22% inlining libm-2.26.so [.] __hypot_finite | ---__hypot_finite ??:0 | |--44.15%--hypot ??:0 | main complex:589 | main complex:597 | main complex:654 | main complex:664 | main inlining.cpp:14 After: $ perf report -g srcline -q | head 45.22% inlining libm-2.26.so [.] __hypot_finite | ---__hypot_finite | |--44.15%--hypot | std::__complex_abs complex:589 (inlined) | std::abs<double> complex:597 (inlined) | std::_Norm_helper<true>::_S_do_it<double> complex:654 (inlined) | std::norm<double> complex:664 (inlined) | main inlining.cpp:14 Signed-off-by: Namhyung Kim <namhyung@kernel.org> Reviewed-by: Jiri Olsa <jolsa@kernel.org> Reviewed-by: Milian Wolff <milian.wolff@kdab.com> Cc: Jin Yao <yao.jin@linux.intel.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: kernel-team@lge.com Link: http://lkml.kernel.org/r/20171031020654.31163-2-namhyung@kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/util/event.h')
0 files changed, 0 insertions, 0 deletions