[tip:perf/core] perf c2c report: Make calc_width work with struct c2c_hist_entry

From: tip-bot for Jiri Olsa
Date: Tue Mar 20 2018 - 02:18:55 EST


Commit-ID: 3773138828b38f3f1364ef318cd876b16182388a
Gitweb: https://git.kernel.org/tip/3773138828b38f3f1364ef318cd876b16182388a
Author: Jiri Olsa <jolsa@xxxxxxxxxx>
AuthorDate: Fri, 9 Mar 2018 11:14:38 +0100
Committer: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
CommitDate: Fri, 16 Mar 2018 13:53:05 -0300

perf c2c report: Make calc_width work with struct c2c_hist_entry

We are going to calculate tje column width based on the struct
c2c_hist_entry data, so making calc_width to work with struct
c2c_hist_entry.

Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx>
Cc: Alexander Shishkin <alexander.shishkin@xxxxxxxxxxxxxxx>
Cc: David Ahern <dsahern@xxxxxxxxx>
Cc: Joe Mario <jmario@xxxxxxxxxx>
Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
Link: http://lkml.kernel.org/r/20180309101442.9224-6-jolsa@xxxxxxxxxx
Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
---
tools/perf/builtin-c2c.c | 14 +++++++++-----
1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/tools/perf/builtin-c2c.c b/tools/perf/builtin-c2c.c
index 95765a1db903..43ce55550c9d 100644
--- a/tools/perf/builtin-c2c.c
+++ b/tools/perf/builtin-c2c.c
@@ -1839,20 +1839,24 @@ static inline int valid_hitm_or_store(struct hist_entry *he)
return has_hitm || c2c_he->stats.store;
}

-static void calc_width(struct hist_entry *he)
+static void calc_width(struct c2c_hist_entry *c2c_he)
{
struct c2c_hists *c2c_hists;

- c2c_hists = container_of(he->hists, struct c2c_hists, hists);
- hists__calc_col_len(&c2c_hists->hists, he);
+ c2c_hists = container_of(c2c_he->he.hists, struct c2c_hists, hists);
+ hists__calc_col_len(&c2c_hists->hists, &c2c_he->he);
}

static int filter_cb(struct hist_entry *he)
{
+ struct c2c_hist_entry *c2c_he;
+
+ c2c_he = container_of(he, struct c2c_hist_entry, he);
+
if (c2c.show_src && !he->srcline)
he->srcline = hist_entry__get_srcline(he);

- calc_width(he);
+ calc_width(c2c_he);

if (!valid_hitm_or_store(he))
he->filtered = HIST_FILTER__C2C;
@@ -1869,7 +1873,7 @@ static int resort_cl_cb(struct hist_entry *he)
c2c_he = container_of(he, struct c2c_hist_entry, he);
c2c_hists = c2c_he->hists;

- calc_width(he);
+ calc_width(c2c_he);

if (display && c2c_hists) {
static unsigned int idx;