Each entry that used to get added once to the histogram, now is added
chain->nr times, each time with one less entry in the
callchain.
This will result in a non-leaf function that appears in a lot of
samples to get a histogram entry with lots of hits.
The user can then drill down into the callchains of functions that
have high inclusive times.
Sample command lines:
$ perf record -ag -- sleep 1
$ perf report -g graph,0.5,callee -n -s inclusive
Signed-off-by: Arun Sharma <asharma@xxxxxx>
Cc: Ingo Molnar <mingo@xxxxxxx>
CC: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
Cc: Mike Galbraith <efault@xxxxxx>
Cc: Paul Mackerras <paulus@xxxxxxxxx>
Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
Cc: Stephane Eranian <eranian@xxxxxxxxxx>
Cc: Namhyung Kim <namhyung.kim@xxxxxxx>
Cc: Tom Zanussi <tzanussi@xxxxxxxxx>
Cc: linux-kernel@xxxxxxxxxxxxxxx
Cc: linux-perf-users@xxxxxxxxxxxxxxx
---
tools/perf/builtin-annotate.c | 2 +-
tools/perf/builtin-diff.c | 2 +-
tools/perf/builtin-report.c | 13 +++----
tools/perf/builtin-top.c | 2 +-
tools/perf/util/callchain.c | 15 ++++++++
tools/perf/util/callchain.h | 4 ++
tools/perf/util/hist.c | 80 +++++++++++++++++++++++++++++++++++++++-
tools/perf/util/hist.h | 4 ++-
tools/perf/util/sort.c | 14 +++++++
tools/perf/util/sort.h | 4 ++
10 files changed, 126 insertions(+), 14 deletions(-)