Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752809AbdGMRqY (ORCPT ); Thu, 13 Jul 2017 13:46:24 -0400 Received: from mail-pg0-f66.google.com ([74.125.83.66]:36567 "EHLO mail-pg0-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752425AbdGMRqU (ORCPT ); Thu, 13 Jul 2017 13:46:20 -0400 From: Taeung Song To: Arnaldo Carvalho de Melo Cc: linux-kernel@vger.kernel.org, Namhyung Kim , Milian Wolff , Jiri Olsa Subject: [PATCH v2 8/9] perf annotate browser: Support the toggle number of samples with a 'e' hotkey Date: Fri, 14 Jul 2017 02:46:16 +0900 Message-Id: <1499967976-15674-1-git-send-email-treeze.taeung@gmail.com> X-Mailer: git-send-email 2.7.4 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3259 Lines: 83 Cc: Namhyung Kim Cc: Milian Wolff Cc: Jiri Olsa Signed-off-by: Taeung Song --- tools/perf/ui/browsers/annotate.c | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/tools/perf/ui/browsers/annotate.c b/tools/perf/ui/browsers/annotate.c index 34b3189..19173b1 100644 --- a/tools/perf/ui/browsers/annotate.c +++ b/tools/perf/ui/browsers/annotate.c @@ -41,6 +41,7 @@ static struct annotate_browser_opt { jump_arrows, show_linenr, show_nr_jumps, + show_nr_samples, show_total_period; } annotate_browser__opts = { .use_offset = true, @@ -156,6 +157,9 @@ static void annotate_browser__write(struct ui_browser *browser, void *entry, int if (annotate_browser__opts.show_total_period) { ui_browser__printf(browser, "%10" PRIu64 " ", bdl->samples[i].sample.period); + } else if (annotate_browser__opts.show_nr_samples) { + ui_browser__printf(browser, "%6" PRIu64 " ", + bdl->samples[i].sample.nr_samples); } else { ui_browser__printf(browser, "%6.2f ", bdl->samples[i].percent); @@ -169,6 +173,8 @@ static void annotate_browser__write(struct ui_browser *browser, void *entry, int else { if (annotate_browser__opts.show_total_period) ui_browser__printf(browser, "%*s", 11, "Event count"); + else if (annotate_browser__opts.show_nr_samples) + ui_browser__printf(browser, "%*s", 7, "Samples"); else ui_browser__printf(browser, "%*s", 7, "Percent"); } @@ -834,6 +840,7 @@ static int annotate_browser__run(struct annotate_browser *browser, "o Toggle disassembler output/simplified view\n" "s Toggle source code view\n" "t Toggle total period view\n" + "e Toggle number of samples\n" "/ Search string\n" "k Toggle line numbers\n" "r Run available scripts\n" @@ -914,6 +921,12 @@ static int annotate_browser__run(struct annotate_browser *browser, !annotate_browser__opts.show_total_period; annotate_browser__update_addr_width(browser); continue; + case 'e': + annotate_browser__opts.show_total_period = false; + annotate_browser__opts.show_nr_samples = + !annotate_browser__opts.show_nr_samples; + annotate_browser__update_addr_width(browser); + continue; case K_LEFT: case K_ESC: case 'q': @@ -934,9 +947,11 @@ static int annotate_browser__run(struct annotate_browser *browser, int map_symbol__tui_annotate(struct map_symbol *ms, struct perf_evsel *evsel, struct hist_browser_timer *hbt) { - /* Set default value for show_total_period. */ + /* Set default value for show_total_period and show_nr_samples */ annotate_browser__opts.show_total_period = symbol_conf.show_total_period; + annotate_browser__opts.show_nr_samples = + symbol_conf.show_nr_samples; return symbol__tui_annotate(ms->sym, ms->map, evsel, hbt); } @@ -1187,6 +1202,7 @@ static struct annotate_config { ANNOTATE_CFG(jump_arrows), ANNOTATE_CFG(show_linenr), ANNOTATE_CFG(show_nr_jumps), + ANNOTATE_CFG(show_nr_samples), ANNOTATE_CFG(show_total_period), ANNOTATE_CFG(use_offset), }; -- 2.7.4