Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751124AbdHUFdN (ORCPT ); Mon, 21 Aug 2017 01:33:13 -0400 Received: from mail-pg0-f68.google.com ([74.125.83.68]:36860 "EHLO mail-pg0-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751019AbdHUFdM (ORCPT ); Mon, 21 Aug 2017 01:33:12 -0400 Subject: Re: [PATCH v3 1/5] perf annotate stdio: Support --show-nr-samples option To: Arnaldo Carvalho de Melo Cc: linux-kernel@vger.kernel.org, taeung@kosslab.kr, Namhyung Kim , Milian Wolff , Jiri Olsa References: <1503046008-5511-1-git-send-email-treeze.taeung@gmail.com> <20170818133354.GH10891@kernel.org> From: Taeung Song Message-ID: Date: Mon, 21 Aug 2017 14:33:06 +0900 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 MIME-Version: 1.0 In-Reply-To: <20170818133354.GH10891@kernel.org> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3708 Lines: 94 On 08/18/2017 10:33 PM, Arnaldo Carvalho de Melo wrote: > Em Fri, Aug 18, 2017 at 05:46:48PM +0900, Taeung Song escreveu: >> Add --show-nr-samples option to perf-annotate >> so that it corresponds with perf-report. > > So, at this point I tried to test it and forgot this was just about > --stdio, which confused me, so I added the following patch, that I'll > lift when adding the browser support, which may not happen at this time > if there are problems there. > > @@ -473,6 +474,11 @@ int cmd_annotate(int argc, const char **argv) > annotate.sym_hist_filter = argv[0]; > } > > + if (symbol_conf.show_nr_samples && !annotate.use_stdio) { > + pr_err("--show-nr-samples is only available in --stdio mode at this time\n"); > + return ret; > + } > + > > - Arnaldo > Ok, got it. Thanks, Taeung >> Cc: Namhyung Kim >> Cc: Milian Wolff >> Cc: Jiri Olsa >> Signed-off-by: Taeung Song >> --- >> tools/perf/Documentation/perf-annotate.txt | 4 ++++ >> tools/perf/builtin-annotate.c | 2 ++ >> tools/perf/util/annotate.c | 6 +++++- >> 3 files changed, 11 insertions(+), 1 deletion(-) >> >> diff --git a/tools/perf/Documentation/perf-annotate.txt b/tools/perf/Documentation/perf-annotate.txt >> index a89273d..2a5975c 100644 >> --- a/tools/perf/Documentation/perf-annotate.txt >> +++ b/tools/perf/Documentation/perf-annotate.txt >> @@ -43,6 +43,10 @@ OPTIONS >> --quiet:: >> Do not show any message. (Suppress -v) >> >> +-n:: >> +--show-nr-samples:: >> + Show the number of samples for each symbol >> + >> -D:: >> --dump-raw-trace:: >> Dump raw trace in ASCII. >> diff --git a/tools/perf/builtin-annotate.c b/tools/perf/builtin-annotate.c >> index 658c920..acde4cc 100644 >> --- a/tools/perf/builtin-annotate.c >> +++ b/tools/perf/builtin-annotate.c >> @@ -445,6 +445,8 @@ int cmd_annotate(int argc, const char **argv) >> "Show event group information together"), >> OPT_BOOLEAN(0, "show-total-period", &symbol_conf.show_total_period, >> "Show a column with the sum of periods"), >> + OPT_BOOLEAN('n', "show-nr-samples", &symbol_conf.show_nr_samples, >> + "Show a column with the number of samples"), >> OPT_CALLBACK_DEFAULT(0, "stdio-color", NULL, "mode", >> "'always' (default), 'never' or 'auto' only applicable to --stdio mode", >> stdio__config_color, "always"), >> diff --git a/tools/perf/util/annotate.c b/tools/perf/util/annotate.c >> index 2dab0e5..4397a8b 100644 >> --- a/tools/perf/util/annotate.c >> +++ b/tools/perf/util/annotate.c >> @@ -1145,6 +1145,9 @@ static int disasm_line__print(struct disasm_line *dl, struct symbol *sym, u64 st >> if (symbol_conf.show_total_period) >> color_fprintf(stdout, color, " %11" PRIu64, >> sample.period); >> + else if (symbol_conf.show_nr_samples) >> + color_fprintf(stdout, color, " %7" PRIu64, >> + sample.nr_samples); >> else >> color_fprintf(stdout, color, " %7.2f", percent); >> } >> @@ -1825,7 +1828,8 @@ int symbol__annotate_printf(struct symbol *sym, struct map *map, >> width *= evsel->nr_members; >> >> graph_dotted_len = printf(" %-*.*s| Source code & Disassembly of %s for %s (%" PRIu64 " samples)\n", >> - width, width, symbol_conf.show_total_period ? "Event count" : "Percent", >> + width, width, symbol_conf.show_total_period ? "Period" : >> + symbol_conf.show_nr_samples ? "Samples" : "Percent", >> d_filename, evsel_name, h->nr_samples); >> >> printf("%-*.*s----\n", >> -- >> 2.7.4