aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/ui
diff options
context:
space:
mode:
authorJiri Olsa <jolsa@redhat.com>2012-10-04 08:49:39 -0400
committerArnaldo Carvalho de Melo <acme@redhat.com>2012-10-04 12:30:27 -0400
commit1d77822ea6245e89149872405a3844e0778a004a (patch)
tree8ddc334a3be9f0248ee83c8a5bf2b84be2204953 /tools/perf/ui
parent41724e4cf6c443d2dc575669b8555f0e2ae427a9 (diff)
perf tool: Add hpp interface to enable/disable hpp column
Adding perf_hpp__column_enable function to enable/disable hists column and removing diff command specific stuff 'need_pair and show_displacement' from hpp code. The diff command now enables/disables columns separately according to the user arguments. This will be helpful in future patches where more columns are added into diff output. Signed-off-by: Jiri Olsa <jolsa@redhat.com> Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com> Cc: Frederic Weisbecker <fweisbec@gmail.com> Cc: Ingo Molnar <mingo@elte.hu> Cc: Ingo Molnar <mingo@kernel.org> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Paul Mackerras <paulus@samba.org> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Stephane Eranian <eranian@google.com> Link: http://lkml.kernel.org/r/1349354994-17853-6-git-send-email-namhyung@kernel.org Signed-off-by: Namhyung Kim <namhyung@kernel.org> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/ui')
-rw-r--r--tools/perf/ui/browsers/hists.c2
-rw-r--r--tools/perf/ui/gtk/browser.c2
-rw-r--r--tools/perf/ui/hist.c15
-rw-r--r--tools/perf/ui/setup.c2
4 files changed, 9 insertions, 12 deletions
diff --git a/tools/perf/ui/browsers/hists.c b/tools/perf/ui/browsers/hists.c
index a21f40bebba..bbd11c2f69d 100644
--- a/tools/perf/ui/browsers/hists.c
+++ b/tools/perf/ui/browsers/hists.c
@@ -584,7 +584,7 @@ HPP__COLOR_FN(overhead_guest_us, period_guest_us)
584 584
585void hist_browser__init_hpp(void) 585void hist_browser__init_hpp(void)
586{ 586{
587 perf_hpp__init(false, false); 587 perf_hpp__init();
588 588
589 perf_hpp__format[PERF_HPP__OVERHEAD].color = 589 perf_hpp__format[PERF_HPP__OVERHEAD].color =
590 hist_browser__hpp_color_overhead; 590 hist_browser__hpp_color_overhead;
diff --git a/tools/perf/ui/gtk/browser.c b/tools/perf/ui/gtk/browser.c
index 7ff99ec1d95..2bc08f6af71 100644
--- a/tools/perf/ui/gtk/browser.c
+++ b/tools/perf/ui/gtk/browser.c
@@ -73,7 +73,7 @@ HPP__COLOR_FN(overhead_guest_us, period_guest_us)
73 73
74void perf_gtk__init_hpp(void) 74void perf_gtk__init_hpp(void)
75{ 75{
76 perf_hpp__init(false, false); 76 perf_hpp__init();
77 77
78 perf_hpp__format[PERF_HPP__OVERHEAD].color = 78 perf_hpp__format[PERF_HPP__OVERHEAD].color =
79 perf_gtk__hpp_color_overhead; 79 perf_gtk__hpp_color_overhead;
diff --git a/tools/perf/ui/hist.c b/tools/perf/ui/hist.c
index 6b0138e5f33..e8853f7780a 100644
--- a/tools/perf/ui/hist.c
+++ b/tools/perf/ui/hist.c
@@ -302,7 +302,7 @@ struct perf_hpp_fmt perf_hpp__format[] = {
302#undef HPP__COLOR_PRINT_FNS 302#undef HPP__COLOR_PRINT_FNS
303#undef HPP__PRINT_FNS 303#undef HPP__PRINT_FNS
304 304
305void perf_hpp__init(bool need_pair, bool show_displacement) 305void perf_hpp__init(void)
306{ 306{
307 if (symbol_conf.show_cpu_utilization) { 307 if (symbol_conf.show_cpu_utilization) {
308 perf_hpp__format[PERF_HPP__OVERHEAD_SYS].cond = true; 308 perf_hpp__format[PERF_HPP__OVERHEAD_SYS].cond = true;
@@ -319,15 +319,12 @@ void perf_hpp__init(bool need_pair, bool show_displacement)
319 319
320 if (symbol_conf.show_total_period) 320 if (symbol_conf.show_total_period)
321 perf_hpp__format[PERF_HPP__PERIOD].cond = true; 321 perf_hpp__format[PERF_HPP__PERIOD].cond = true;
322}
322 323
323 if (need_pair) { 324void perf_hpp__column_enable(unsigned col, bool enable)
324 perf_hpp__format[PERF_HPP__OVERHEAD].cond = false; 325{
325 perf_hpp__format[PERF_HPP__BASELINE].cond = true; 326 BUG_ON(col >= PERF_HPP__MAX_INDEX);
326 perf_hpp__format[PERF_HPP__DELTA].cond = true; 327 perf_hpp__format[col].cond = enable;
327
328 if (show_displacement)
329 perf_hpp__format[PERF_HPP__DISPL].cond = true;
330 }
331} 328}
332 329
333static inline void advance_hpp(struct perf_hpp *hpp, int inc) 330static inline void advance_hpp(struct perf_hpp *hpp, int inc)
diff --git a/tools/perf/ui/setup.c b/tools/perf/ui/setup.c
index bd7d460f844..ebb4cc10787 100644
--- a/tools/perf/ui/setup.c
+++ b/tools/perf/ui/setup.c
@@ -30,7 +30,7 @@ void setup_browser(bool fallback_to_pager)
30 if (fallback_to_pager) 30 if (fallback_to_pager)
31 setup_pager(); 31 setup_pager();
32 32
33 perf_hpp__init(false, false); 33 perf_hpp__init();
34 break; 34 break;
35 } 35 }
36} 36}