diff options
author | Ingo Molnar <mingo@kernel.org> | 2013-12-11 11:57:46 +0100 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2013-12-11 11:57:46 +0100 |
commit | 813932149e7847c91f544a03b943a84c5b264f76 (patch) | |
tree | 8e9a5f016e28797e7c07dfa1c16d15822a54a63c /tools/perf/builtin-report.c | |
parent | tools/perf/build: Fix install dependency (diff) | |
parent | perf unwinding: Use the per-feature check flags (diff) | |
download | linux-813932149e7847c91f544a03b943a84c5b264f76.tar.xz linux-813932149e7847c91f544a03b943a84c5b264f76.zip |
Merge tag 'perf-core-for-mingo' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core
Pull perf/core improvements and fixes from Arnaldo Carvalho de Melo:
* Add an option in 'perf script' to print the source line number, from Adrian Hunter
* Add --header/--header-only options to 'script' and 'report', the default is not
tho show the header info, but as this has been the default for some time,
leave a single line explaining how to obtain that information, from Jiri Olsa.
* Fix symoff printing in callchains in 'perf script', from Adrian Hunter.
* Assorted mmap_pages handling fixes, from Adrian Hunter.
* Fix summary percentage when processing files in 'perf trace', from David Ahern.
* Handle old kernels where the "raw_syscalls" tracepoints were called plan "syscalls",
in 'perf trace', from David Ahern.
* Several man pages typo fixes from Dongsheng Yang.
* Add '-v' option to 'perf kvm', from Dongsheng Yang.
* Make perf kvm diff support --guestmount, from Dongsheng Yang.
* Get rid of several die() calls in libtraceevent, from Namhyung Kim.
* Use basename() in a more robust way, to avoid problems related to different
system library implementations for that function, from Stephane Eranian.
* Remove open coded management of short_name_allocated member, from Adrian Hunter
* Several cleanups in the "dso" methods, constifying some parameters and
renaming some fields to clarify its purpose. (Arnaldo Carvalho de Melo.)
* Add per-feature check flags, fixing libunwind related build problems on some
architectures, from Jean Pihet.
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'tools/perf/builtin-report.c')
-rw-r--r-- | tools/perf/builtin-report.c | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/tools/perf/builtin-report.c b/tools/perf/builtin-report.c index 8cf8e66ba594..3a14dbed387c 100644 --- a/tools/perf/builtin-report.c +++ b/tools/perf/builtin-report.c @@ -49,6 +49,8 @@ struct perf_report { bool show_threads; bool inverted_callchain; bool mem_mode; + bool header; + bool header_only; int max_stack; struct perf_read_values show_threads_values; const char *pretty_printing_style; @@ -514,9 +516,6 @@ static int __cmd_report(struct perf_report *rep) return ret; } - if (use_browser <= 0) - perf_session__fprintf_info(session, stdout, rep->show_full_info); - if (rep->show_threads) perf_read_values_init(&rep->show_threads_values); @@ -820,6 +819,9 @@ int cmd_report(int argc, const char **argv, const char *prefix __maybe_unused) OPT_BOOLEAN(0, "gtk", &report.use_gtk, "Use the GTK2 interface"), OPT_BOOLEAN(0, "stdio", &report.use_stdio, "Use the stdio interface"), + OPT_BOOLEAN(0, "header", &report.header, "Show data header."), + OPT_BOOLEAN(0, "header-only", &report.header_only, + "Show only data header."), OPT_STRING('s', "sort", &sort_order, "key[,key2...]", "sort by key(s): pid, comm, dso, symbol, parent, cpu, srcline," " dso_to, dso_from, symbol_to, symbol_from, mispredict," @@ -963,6 +965,10 @@ repeat: goto error; } + /* Force tty output for header output. */ + if (report.header || report.header_only) + use_browser = 0; + if (strcmp(input_name, "-") != 0) setup_browser(true); else { @@ -970,6 +976,16 @@ repeat: perf_hpp__init(); } + if (report.header || report.header_only) { + perf_session__fprintf_info(session, stdout, + report.show_full_info); + if (report.header_only) + return 0; + } else if (use_browser == 0) { + fputs("# To display the perf.data header info, please use --header/--header-only options.\n#\n", + stdout); + } + /* * Only in the TUI browser we are doing integrated annotation, * so don't allocate extra space that won't be used in the stdio |