Re: [PATCH v6 4/4] perf diff: color the Weighted Diff column

From: Ramkumar Ramachandra
Date: Mon Dec 30 2013 - 02:49:12 EST


Ramkumar Ramachandra wrote:
> diff --git a/tools/perf/builtin-diff.c b/tools/perf/builtin-diff.c
> index c07cd3c..9c69620 100644
> --- a/tools/perf/builtin-diff.c
> +++ b/tools/perf/builtin-diff.c
> @@ -777,6 +777,7 @@ static int __hpp__color_compare(struct perf_hpp_fmt *fmt,
> container_of(fmt, struct diff_hpp_fmt, fmt);
> struct hist_entry *pair = get_pair_fmt(he, dfmt);
> double diff;
> + s64 wdiff;
> char pfmt[20] = " ";
>
> if (!pair)
> @@ -805,6 +806,17 @@ static int __hpp__color_compare(struct perf_hpp_fmt *fmt,
> scnprintf(pfmt, 20, "%%%d.6f", dfmt->header_width);
> return value_color_snprintf(hpp->buf, hpp->size,
> pfmt, diff);
> + case COMPUTE_WEIGHTED_DIFF:
> + if (he->dummy)
> + goto dummy_print;
> + if (pair->diff.computed)
> + wdiff = pair->diff.wdiff;
> + else
> + wdiff = compute_wdiff(he, pair);
> +
> + scnprintf(pfmt, 20, "%%14ld", dfmt->header_width);
> + return value_color_snprintf(hpp->buf, hpp->size,
> + pfmt, wdiff);

Oops, I sent this out too fast. value_color_snprintf() accepts a
double, but wdiff is an s64. As a result, the wdiff column is
populated with zeros.

Will resend.
--
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/