[tip:perf/core] perf report: Honor column width setting

2014-08-12 Thread tip-bot for Namhyung Kim
Commit-ID:  5b5916696051b88e63f3726cc3db44bf9561bad9
Gitweb: http://git.kernel.org/tip/5b5916696051b88e63f3726cc3db44bf9561bad9
Author: Namhyung Kim 
AuthorDate: Thu, 31 Jul 2014 14:47:38 +0900
Committer:  Arnaldo Carvalho de Melo 
CommitDate: Tue, 12 Aug 2014 12:03:06 -0300

perf report: Honor column width setting

Set column width and do not change it if user gives -w/--column-widths
option.  It'll truncate longer symbols than the width if exists.

Signed-off-by: Namhyung Kim 
Cc: Ingo Molnar 
Cc: Jiri Olsa 
Cc: Namhyung Kim 
Cc: Paul Mackerras 
Cc: Peter Zijlstra 
Link: 
http://lkml.kernel.org/r/1406785662-5534-5-git-send-email-namhy...@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo 
---
 tools/perf/ui/browsers/hists.c | 18 +
 tools/perf/ui/gtk/hists.c  | 10 ++---
 tools/perf/ui/hist.c   | 84 +-
 tools/perf/ui/stdio/hist.c |  4 +-
 tools/perf/util/hist.h | 14 ---
 tools/perf/util/sort.c | 49 +++-
 6 files changed, 116 insertions(+), 63 deletions(-)

diff --git a/tools/perf/ui/browsers/hists.c b/tools/perf/ui/browsers/hists.c
index c1d8d39..e07d4e8 100644
--- a/tools/perf/ui/browsers/hists.c
+++ b/tools/perf/ui/browsers/hists.c
@@ -678,12 +678,12 @@ static u64 __hpp_get_##_field(struct hist_entry *he)  
\
 }  \
\
 static int \
-hist_browser__hpp_color_##_type(struct perf_hpp_fmt *fmt __maybe_unused,\
+hist_browser__hpp_color_##_type(struct perf_hpp_fmt *fmt,  \
struct perf_hpp *hpp,   \
struct hist_entry *he)  \
 {  \
-   return __hpp__fmt(hpp, he, __hpp_get_##_field, " %*.2f%%", 6,   \
- __hpp__slsmg_color_printf, true); \
+   return hpp__fmt(fmt, hpp, he, __hpp_get_##_field, " %*.2f%%",   \
+   __hpp__slsmg_color_printf, true);   \
 }
 
 #define __HPP_COLOR_ACC_PERCENT_FN(_type, _field)  \
@@ -693,19 +693,20 @@ static u64 __hpp_get_acc_##_field(struct hist_entry *he)  
\
 }  \
\
 static int \
-hist_browser__hpp_color_##_type(struct perf_hpp_fmt *fmt __maybe_unused,\
+hist_browser__hpp_color_##_type(struct perf_hpp_fmt *fmt,  \
struct perf_hpp *hpp,   \
struct hist_entry *he)  \
 {  \
if (!symbol_conf.cumulate_callchain) {  \
+   int len = fmt->user_len ?: fmt->len;\
int ret = scnprintf(hpp->buf, hpp->size,\
-   "%*s", 8, "N/A");   \
+   "%*s", len, "N/A"); \
slsmg_printf("%s", hpp->buf);   \
\
return ret; \
}   \
-   return __hpp__fmt(hpp, he, __hpp_get_acc_##_field, " %*.2f%%",  \
- 6, __hpp__slsmg_color_printf, true);  \
+   return hpp__fmt(fmt, hpp, he, __hpp_get_acc_##_field,   \
+   " %*.2f%%", __hpp__slsmg_color_printf, true);   \
 }
 
 __HPP_COLOR_PERCENT_FN(overhead, period)
@@ -1549,6 +1550,9 @@ static int perf_evsel__hists_browse(struct perf_evsel 
*evsel, int nr_events,
 
memset(options, 0, sizeof(options));
 
+   if (symbol_conf.col_width_list_str)
+   perf_hpp__set_user_width(symbol_conf.col_width_list_str);
+
while (1) {
const struct thread *thread = NULL;
const struct dso *dso = NULL;
diff --git a/tools/perf/ui/gtk/hists.c b/tools/perf/ui/gtk/hists.c
index 91f6cd7..897b2e1 100644
--- a/tools/perf/ui/gtk/hists.c
+++ b/tools/perf/ui/gtk/hists.c
@@ -41,12 +41,12 @@ static u64 he_get_##_field(struct hist_entry *he)   
\
return he->stat._field; 
\
 }  
\

\
-static int perf_gtk__hpp_color_##_type(struct perf_hpp_fmt *fmt 
__maybe_unused,  

[tip:perf/core] perf report: Honor column width setting

2014-08-12 Thread tip-bot for Namhyung Kim
Commit-ID:  5b5916696051b88e63f3726cc3db44bf9561bad9
Gitweb: http://git.kernel.org/tip/5b5916696051b88e63f3726cc3db44bf9561bad9
Author: Namhyung Kim namhy...@kernel.org
AuthorDate: Thu, 31 Jul 2014 14:47:38 +0900
Committer:  Arnaldo Carvalho de Melo a...@redhat.com
CommitDate: Tue, 12 Aug 2014 12:03:06 -0300

perf report: Honor column width setting

Set column width and do not change it if user gives -w/--column-widths
option.  It'll truncate longer symbols than the width if exists.

Signed-off-by: Namhyung Kim namhy...@kernel.org
Cc: Ingo Molnar mi...@kernel.org
Cc: Jiri Olsa jo...@redhat.com
Cc: Namhyung Kim namhyung@lge.com
Cc: Paul Mackerras pau...@samba.org
Cc: Peter Zijlstra a.p.zijls...@chello.nl
Link: 
http://lkml.kernel.org/r/1406785662-5534-5-git-send-email-namhy...@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo a...@redhat.com
---
 tools/perf/ui/browsers/hists.c | 18 +
 tools/perf/ui/gtk/hists.c  | 10 ++---
 tools/perf/ui/hist.c   | 84 +-
 tools/perf/ui/stdio/hist.c |  4 +-
 tools/perf/util/hist.h | 14 ---
 tools/perf/util/sort.c | 49 +++-
 6 files changed, 116 insertions(+), 63 deletions(-)

diff --git a/tools/perf/ui/browsers/hists.c b/tools/perf/ui/browsers/hists.c
index c1d8d39..e07d4e8 100644
--- a/tools/perf/ui/browsers/hists.c
+++ b/tools/perf/ui/browsers/hists.c
@@ -678,12 +678,12 @@ static u64 __hpp_get_##_field(struct hist_entry *he)  
\
 }  \
\
 static int \
-hist_browser__hpp_color_##_type(struct perf_hpp_fmt *fmt __maybe_unused,\
+hist_browser__hpp_color_##_type(struct perf_hpp_fmt *fmt,  \
struct perf_hpp *hpp,   \
struct hist_entry *he)  \
 {  \
-   return __hpp__fmt(hpp, he, __hpp_get_##_field,  %*.2f%%, 6,   \
- __hpp__slsmg_color_printf, true); \
+   return hpp__fmt(fmt, hpp, he, __hpp_get_##_field,  %*.2f%%,   \
+   __hpp__slsmg_color_printf, true);   \
 }
 
 #define __HPP_COLOR_ACC_PERCENT_FN(_type, _field)  \
@@ -693,19 +693,20 @@ static u64 __hpp_get_acc_##_field(struct hist_entry *he)  
\
 }  \
\
 static int \
-hist_browser__hpp_color_##_type(struct perf_hpp_fmt *fmt __maybe_unused,\
+hist_browser__hpp_color_##_type(struct perf_hpp_fmt *fmt,  \
struct perf_hpp *hpp,   \
struct hist_entry *he)  \
 {  \
if (!symbol_conf.cumulate_callchain) {  \
+   int len = fmt-user_len ?: fmt-len;\
int ret = scnprintf(hpp-buf, hpp-size,\
-   %*s, 8, N/A);   \
+   %*s, len, N/A); \
slsmg_printf(%s, hpp-buf);   \
\
return ret; \
}   \
-   return __hpp__fmt(hpp, he, __hpp_get_acc_##_field,  %*.2f%%,  \
- 6, __hpp__slsmg_color_printf, true);  \
+   return hpp__fmt(fmt, hpp, he, __hpp_get_acc_##_field,   \
+%*.2f%%, __hpp__slsmg_color_printf, true);   \
 }
 
 __HPP_COLOR_PERCENT_FN(overhead, period)
@@ -1549,6 +1550,9 @@ static int perf_evsel__hists_browse(struct perf_evsel 
*evsel, int nr_events,
 
memset(options, 0, sizeof(options));
 
+   if (symbol_conf.col_width_list_str)
+   perf_hpp__set_user_width(symbol_conf.col_width_list_str);
+
while (1) {
const struct thread *thread = NULL;
const struct dso *dso = NULL;
diff --git a/tools/perf/ui/gtk/hists.c b/tools/perf/ui/gtk/hists.c
index 91f6cd7..897b2e1 100644
--- a/tools/perf/ui/gtk/hists.c
+++ b/tools/perf/ui/gtk/hists.c
@@ -41,12 +41,12 @@ static u64 he_get_##_field(struct hist_entry *he)   
\
return he-stat._field; 
\
 }  
\