perf top: Add a visual cue for toggle zeroing of samples
PATCH 1/1 perf top: Add a visual cue for toggle zeroing of samples
When 'perf top' is run, one can't easily find a difference between -z option and normal output.
So I added a visual cue to know whether it is the zeroing or not.
Signed-off-by Taeung Song <[email protected]>
--- tools/perf/PERF-FEATURES | 1 + tools/perf/ui/browsers/hists.c | 34 ++++++++++++++++++++++++---------- 2 files changed, 25 insertions(+), 10 deletions(-) create mode 100644 tools/perf/PERF-FEATURES
tools/perf/PERF-FEATURES new file +1 -0
@@ -0,0 +1 @@ +feature-dwarf(1) feature-glibc(1) feature-gtk2(0) feature-libaudit(1) feature-libbfd(0) feature-libelf(1) feature-libnuma(1) feature-libperl(1) feature-libpython(0) feature-libslang(1) feature-libunwind(1) feature-libdw-dwarf-unwind(1) dwarf-post-unwind(libunwind)
tools/perf/ui/browsers/hists.c +24 -10
@@ -35,7 +35,9 @@ struct hist_browser {extern void hist_browser__init_hpp (void ); -static int hists__browser_title (struct hists *hists,char *bf,size_t size); +static int hists__browser_title (struct hists *hists, +struct hist_browser_timer *hbt, +char *bf,size_t size);static void hist_browser__update_nr_entries (struct hist_browser *hb); static struct rb_node *hists__filter_entries(struct rb_node *nd,
@@ -390,7 +392,7 @@ static int hist_browser__run(struct hist_browser *browser, browser->b.entries = &browser->hists->entries; browser->b.nr_entries =hist_browser__nr_entries (browser); -hists__browser_title (browser->hists, title,sizeof (title)); +hists__browser_title (browser->hists, hbt, title,sizeof (title));if (ui_browser__show (&browser->b, title,"Press '?' for help on key bindings" ) <0 )
@@ -417,7 +419,8 @@ static int hist_browser__run(struct hist_browser *browser,ui_browser__warn_lost_events (&browser->b); } -hists__browser_title (browser->hists, title,sizeof (title)); +hists__browser_title (browser->hists, + hbt, title,sizeof (title));ui_browser__show_title (&browser->b, title);continue ; }
@@ -1204,7 +1207,16 @@ static struct thread *hist_browser__selected_thread(struct hist_browser *browserreturn browser->he_selection->thread; } -static int hists__browser_title (struct hists *hists,char *bf,size_t size) +/* Check whether the browser is for 'top' or 'report' */ +static inline bool is_report_browser (void *timer) +{ +return timer ==NULL ; +} + +static int hists__browser_title (struct hists *hists, +struct hist_browser_timer *hbt, +char *bf, +size_t size) {char unit;int printed;
@@ -1256,6 +1268,14 @@ static int hists__browser_title(struct hists *hists, char *bf, size_t size)if (dso) printed +=scnprintf (bf + printed, size - printed,", DSO: %s" , dso->short_name); +if (!is_report_browser (hbt)) { +struct perf_top *top = hbt->arg; + +if (top->zero) + printed +=scnprintf (bf + printed, size - printed, +", [z]" ,"" ); + } +return printed; }
@@ -1267,12 +1287,6 @@ static inline void free_popup_options(char **options, int n)zfree (&options[i]); } -/* Check whether the browser is for 'top' or 'report' */ -static inline bool is_report_browser (void *timer) -{ -return timer ==NULL ; -} -/* * Only runtime switching of perf data file will make "input_name" point * to a malloced buffer. So add "is_input_name_malloced" flag to decide
Signature · 1 line
1.9.1