On 07/29/2017 01:26 AM, Arnaldo Carvalho de Melo wrote:
Em Fri, Jul 28, 2017 at 01:16:16AM +0900, Taeung Song escreveu:
Add --show-nr-samples option to perf-annotate
so that it corresponds with perf-report.

So this is not that intuitive, i.e. if one ask for:

   perf annotate --show-total-period --show-nr-samples

then both should appear, no?

- Arnaldo

I thought the users can use both --show-total-period and --show-nr-samples,
but perf-annotate can preferentially show the total period view IMHO.

What do you think about it ?
we need to prevent users from using both ?

Thanks,
Taeung

Cc: Namhyung Kim <namhy...@kernel.org>
Cc: Milian Wolff <milian.wo...@kdab.com>
Cc: Jiri Olsa <jo...@redhat.com>
Signed-off-by: Taeung Song <treeze.tae...@gmail.com>
---
  tools/perf/builtin-annotate.c | 2 ++
  tools/perf/util/annotate.c    | 6 +++++-
  2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/tools/perf/builtin-annotate.c b/tools/perf/builtin-annotate.c
index 6db782d..a8e6db2 100644
--- a/tools/perf/builtin-annotate.c
+++ b/tools/perf/builtin-annotate.c
@@ -447,6 +447,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 5125c2b..7032bdc 100644
--- a/tools/perf/util/annotate.c
+++ b/tools/perf/util/annotate.c
@@ -1144,6 +1144,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);
                }
@@ -1824,7 +1827,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 ? 
"Event count" :
+                                 symbol_conf.show_nr_samples ? "Samples" : 
"Percent",
                                  d_filename, evsel_name, h->nr_samples);
printf("%-*.*s----\n",
--
2.7.4

Reply via email to