lkml.org 
[lkml]   [2012]   [Jan]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[PATCH 8/8] perf report: Fix --stdio output alignment when --showcpuutilization used
Date
Current perf report output is broken if --showcpuutilization is used.
Combination with -n and/or --show-total-period make things worse.
This patch fixes it as follows:

before:
# Events: 13 cycles
#
# Overhead sys us Command Shared Object Symbol
# ........ ....... ................. .....................
#
48.25% 48.25% 0.00% sleep [kernel.kallsyms] [k] trace_hardirqs_off
34.99% 34.99% 0.00% sleep [kernel.kallsyms] [k] __find_get_block_slow
15.99% 15.99% 0.00% sleep [kernel.kallsyms] [k] lock_release_holdtime
0.77% 0.77% 0.00% sleep [kernel.kallsyms] [k] native_write_msr_safe
after:
# Events: 13 cycles
#
# Overhead sys us Command Shared Object Symbol
# ........ ....... ....... ....... ................. .....................
#
48.25% 48.25% 0.00% sleep [kernel.kallsyms] [k] trace_hardirqs_off
34.99% 34.99% 0.00% sleep [kernel.kallsyms] [k] __find_get_block_slow
15.99% 15.99% 0.00% sleep [kernel.kallsyms] [k] lock_release_holdtime
0.77% 0.77% 0.00% sleep [kernel.kallsyms] [k] native_write_msr_safe
Signed-off-by: Namhyung Kim <namhyung@gmail.com>
---
tools/perf/util/hist.c | 34 ++++++++++++++++++----------------
1 files changed, 18 insertions(+), 16 deletions(-)
diff --git a/tools/perf/util/hist.c b/tools/perf/util/hist.c
index abef2703cd24..7561d5c90d98 100644
--- a/tools/perf/util/hist.c
+++ b/tools/perf/util/hist.c
@@ -917,20 +917,6 @@ size_t hists__fprintf(struct hists *hists, struct hists *pair,

fprintf(fp, "# %s", pair ? "Baseline" : "Overhead");

- if (symbol_conf.show_nr_samples) {
- if (sep)
- fprintf(fp, "%cSamples", *sep);
- else
- fputs(" Samples ", fp);
- }
-
- if (symbol_conf.show_total_period) {
- if (sep)
- ret += fprintf(fp, "%cPeriod", *sep);
- else
- ret += fprintf(fp, " Period ");
- }
-
if (symbol_conf.show_cpu_utilization) {
if (sep) {
ret += fprintf(fp, "%csys", *sep);
@@ -940,8 +926,8 @@ size_t hists__fprintf(struct hists *hists, struct hists *pair,
ret += fprintf(fp, "%cguest us", *sep);
}
} else {
- ret += fprintf(fp, " sys ");
- ret += fprintf(fp, " us ");
+ ret += fprintf(fp, " sys ");
+ ret += fprintf(fp, " us ");
if (perf_guest) {
ret += fprintf(fp, " guest sys ");
ret += fprintf(fp, " guest us ");
@@ -949,6 +935,20 @@ size_t hists__fprintf(struct hists *hists, struct hists *pair,
}
}

+ if (symbol_conf.show_nr_samples) {
+ if (sep)
+ fprintf(fp, "%cSamples", *sep);
+ else
+ fputs(" Samples ", fp);
+ }
+
+ if (symbol_conf.show_total_period) {
+ if (sep)
+ ret += fprintf(fp, "%cPeriod", *sep);
+ else
+ ret += fprintf(fp, " Period ");
+ }
+
if (pair) {
if (sep)
ret += fprintf(fp, "%cDelta", *sep);
@@ -993,6 +993,8 @@ size_t hists__fprintf(struct hists *hists, struct hists *pair,
goto print_entries;

fprintf(fp, "# ........");
+ if (symbol_conf.show_cpu_utilization)
+ fprintf(fp, " ....... .......");
if (symbol_conf.show_nr_samples)
fprintf(fp, " ..........");
if (symbol_conf.show_total_period)
--
1.7.6


\
 
 \ /
  Last update: 2012-01-07 18:29    [from the cache]
©2003-2014 Jasper Spaans. Advertise on this site