On Wed, Feb 10, 2016 at 02:19:40PM +0100, Jiri Olsa wrote: > On Tue, Feb 09, 2016 at 11:37:10PM +0100, Jiri Olsa wrote: > > On Fri, Feb 05, 2016 at 10:01:55PM +0900, Namhyung Kim wrote: > > > Support hierarchy output for perf-top using --hierarchy option. > > > > > > Acked-by: Pekka Enberg <penb...@kernel.org> > > > Signed-off-by: Namhyung Kim <namhy...@kernel.org> > > > --- > > > tools/perf/Documentation/perf-top.txt | 3 +++ > > > tools/perf/builtin-top.c | 15 +++++++++++++++ > > > 2 files changed, 18 insertions(+) > > > > > > diff --git a/tools/perf/Documentation/perf-top.txt > > > b/tools/perf/Documentation/perf-top.txt > > > index b0e60e17db38..19f046f027cd 100644 > > > --- a/tools/perf/Documentation/perf-top.txt > > > +++ b/tools/perf/Documentation/perf-top.txt > > > @@ -233,6 +233,9 @@ Default is to monitor all CPUS. > > > --raw-trace:: > > > When displaying traceevent output, do not use print fmt or plugins. > > > > > > +--hierarchy:: > > > + Enable hierarchy output. > > > + > > > INTERACTIVE PROMPTING KEYS > > > -------------------------- > > > > > > diff --git a/tools/perf/builtin-top.c b/tools/perf/builtin-top.c > > > index a75de3940b97..b86b623e8799 100644 > > > --- a/tools/perf/builtin-top.c > > > +++ b/tools/perf/builtin-top.c > > > @@ -1214,6 +1214,8 @@ int cmd_top(int argc, const char **argv, const char > > > *prefix __maybe_unused) > > > parse_branch_stack), > > > OPT_BOOLEAN(0, "raw-trace", &symbol_conf.raw_trace, > > > "Show raw trace event output (do not use print fmt or > > > plugins)"), > > > + OPT_BOOLEAN(0, "hierarchy", &symbol_conf.report_hierarchy, > > > + "Show entries in a hierarchy"), > > > OPT_END() > > > }; > > > const char * const top_usage[] = { > > > @@ -1241,6 +1243,19 @@ int cmd_top(int argc, const char **argv, const > > > char *prefix __maybe_unused) > > > goto out_delete_evlist; > > > } > > > > > > + if (symbol_conf.report_hierarchy) { > > > + /* disable incompatible options */ > > > + symbol_conf.event_group = false; > > > + symbol_conf.cumulate_callchain = false; > > > + > > > + if (field_order) { > > > + pr_err("Error: --hierarchy and --fields options cannot > > > be used together\n"); > > > + parse_options_usage(top_usage, options, "fields", 0); > > > + parse_options_usage(NULL, options, "hierarchy", 0); > > > + goto out_delete_evlist; > > > + } > > > + } > > > > I was wondering about this when I was going through the patchset ;-) > > but isn't that too restricting? hows about fields like > overhead_sys/us, samples, period
Allowing -F/--fields option cannot ensure the hierarchy mode working correctly. Those fields can be shown with following options anyway.. -n, --show-nr-samples Show a column with the number of samples --show-cpu-utilization Show sample percentage for different cpu modes --show-total-period Show a column with the sum of periods Thanks, Namhyung