Re: [PATCH 03/14] perf hists: Separate overhead and baseline columns

From: Namhyung Kim
Date: Fri Sep 28 2012 - 02:04:12 EST


On Thu, 27 Sep 2012 13:09:24 +0200, Jiri Olsa wrote:
> Currently the overhead and baseline columns are handled within
> single function and the distinction is made by 'baseline hists'
> pointer passed by 'struct perf_hpp::ptr'.
>
> Since hists pointer is now part of each hist_entry, it's possible
> to locate paired hists pointer directly from the passed struct
> hist_entry pointer.
>
> Also separating those 2 columns makes the code more obvious.

Yes, it was thinking about something like this.


>
> Cc: Arnaldo Carvalho de Melo <acme@xxxxxxxxxxxxxxxxxx>
> Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
> Cc: Ingo Molnar <mingo@xxxxxxx>
> Cc: Paul Mackerras <paulus@xxxxxxxxx>
> Cc: Corey Ashford <cjashfor@xxxxxxxxxxxxxxxxxx>
> Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
> Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
> Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx>
> ---
[snip]
> +static int hpp__color_baseline(struct perf_hpp *hpp, struct hist_entry *he)
> +{
> + double percent = baseline_percent(he);
> +
> + return percent_color_snprintf(hpp->buf, hpp->size, " %5.2f%%", percent);

Is it possible to have a baseline value over 100%? I changed 'overhead'
colum format from '2 spaces + %5.2f + %' to '1 space + %6.2f + %' for
the case. Probably it'd better using it here too for consistency.


> +}
> +
> +static int hpp__entry_baseline(struct perf_hpp *hpp, struct hist_entry *he)
> +{
> + double percent = baseline_percent(he);
> + const char *fmt = symbol_conf.field_sep ? "%.2f" : " %5.2f%%";

Ditto.

Thanks,
Namhyung

> +
> + return scnprintf(hpp->buf, hpp->size, fmt, percent);
> +}
> +
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/