Em Fri, Feb 17, 2017 at 05:17:39PM +0900, Namhyung Kim escreveu:
> The -q/--quiet option is to suppress any message.  Sometimes users just
> want to see the numbers and it can be used for that case.



#
# (Tip: Customize output of perf script with: perf script -F event,ip,sym)
#
(END)


This still appears, at the end :-\

- Arnaldo
 
> Signed-off-by: Namhyung Kim <namhy...@kernel.org>
> ---
>  tools/perf/Documentation/perf-report.txt |  4 ++++
>  tools/perf/builtin-report.c              | 21 ++++++++++++++++-----
>  2 files changed, 20 insertions(+), 5 deletions(-)
> 
> diff --git a/tools/perf/Documentation/perf-report.txt 
> b/tools/perf/Documentation/perf-report.txt
> index f2914f03ae7b..c04cc0647c16 100644
> --- a/tools/perf/Documentation/perf-report.txt
> +++ b/tools/perf/Documentation/perf-report.txt
> @@ -25,6 +25,10 @@ OPTIONS
>  --verbose::
>          Be more verbose. (show symbol address, etc)
>  
> +-q::
> +--quiet::
> +     Do not show any message.  (Suppress -v)
> +
>  -n::
>  --show-nr-samples::
>       Show the number of samples for each symbol
> diff --git a/tools/perf/builtin-report.c b/tools/perf/builtin-report.c
> index dbd7fa028861..0a88670e56f3 100644
> --- a/tools/perf/builtin-report.c
> +++ b/tools/perf/builtin-report.c
> @@ -320,6 +320,9 @@ static size_t hists__fprintf_nr_sample_events(struct 
> hists *hists, struct report
>       size_t size = sizeof(buf);
>       int socked_id = hists->socket_filter;
>  
> +     if (quiet)
> +             return 0;
> +
>       if (symbol_conf.filter_relative) {
>               nr_samples = hists->stats.nr_non_filtered_samples;
>               nr_events = hists->stats.total_non_filtered_period;
> @@ -372,7 +375,11 @@ static int perf_evlist__tty_browse_hists(struct 
> perf_evlist *evlist,
>  {
>       struct perf_evsel *pos;
>  
> -     fprintf(stdout, "#\n# Total Lost Samples: %" PRIu64 "\n#\n", 
> evlist->stats.total_lost_samples);
> +     if (!quiet) {
> +             fprintf(stdout, "#\n# Total Lost Samples: %" PRIu64 "\n#\n",
> +                     evlist->stats.total_lost_samples);
> +     }
> +
>       evlist__for_each_entry(evlist, pos) {
>               struct hists *hists = evsel__hists(pos);
>               const char *evname = perf_evsel__name(pos);
> @@ -382,7 +389,7 @@ static int perf_evlist__tty_browse_hists(struct 
> perf_evlist *evlist,
>                       continue;
>  
>               hists__fprintf_nr_sample_events(hists, rep, evname, stdout);
> -             hists__fprintf(hists, true, 0, 0, rep->min_percent, stdout,
> +             hists__fprintf(hists, !quiet, 0, 0, rep->min_percent, stdout,
>                              symbol_conf.use_callchain);
>               fprintf(stdout, "\n\n");
>       }
> @@ -716,6 +723,7 @@ int cmd_report(int argc, const char **argv, const char 
> *prefix __maybe_unused)
>                   "input file name"),
>       OPT_INCR('v', "verbose", &verbose,
>                   "be more verbose (show symbol address, etc)"),
> +     OPT_BOOLEAN('q', "quiet", &quiet, "Do not show any message"),
>       OPT_BOOLEAN('D', "dump-raw-trace", &dump_trace,
>                   "dump raw trace in ASCII"),
>       OPT_STRING('k', "vmlinux", &symbol_conf.vmlinux_name,
> @@ -863,6 +871,9 @@ int cmd_report(int argc, const char **argv, const char 
> *prefix __maybe_unused)
>               report.symbol_filter_str = argv[0];
>       }
>  
> +     if (quiet)
> +             perf_quiet_option();
> +
>       if (symbol_conf.vmlinux_name &&
>           access(symbol_conf.vmlinux_name, R_OK)) {
>               pr_err("Invalid file: %s\n", symbol_conf.vmlinux_name);
> @@ -983,14 +994,14 @@ int cmd_report(int argc, const char **argv, const char 
> *prefix __maybe_unused)
>               goto error;
>       }
>  
> -     if (report.header || report.header_only) {
> +     if ((report.header || report.header_only) && !quiet) {
>               perf_session__fprintf_info(session, stdout,
>                                          report.show_full_info);
>               if (report.header_only) {
>                       ret = 0;
>                       goto error;
>               }
> -     } else if (use_browser == 0) {
> +     } else if (use_browser == 0 && !quiet) {
>               fputs("# To display the perf.data header info, please use 
> --header/--header-only options.\n#\n",
>                     stdout);
>       }
> @@ -1009,7 +1020,7 @@ int cmd_report(int argc, const char **argv, const char 
> *prefix __maybe_unused)
>                * providing it only in verbose mode not to bloat too
>                * much struct symbol.
>                */
> -             if (verbose) {
> +             if (verbose > 0) {
>                       /*
>                        * XXX: Need to provide a less kludgy way to ask for
>                        * more space per symbol, the u32 is for the index on
> -- 
> 2.11.1

Reply via email to