Re: [PATCH v2 07/11] perf c2c: Refactor node display macro

From: Namhyung Kim
Date: Wed Jan 06 2021 - 02:48:49 EST


On Sun, Dec 13, 2020 at 10:39 PM Leo Yan <leo.yan@xxxxxxxxxx> wrote:
>
> The macro DISPLAY_HITM() is used to calculate HITM percentage introduced
> by every node and it's shown for the node info.
>
> This patch refactors the macro, it is renamed it as DISPLAY_METRICS().
> And the parameters is changed for passing the metric's statistic value
> and the sum value, this is flexsible for later's extension, e.g. it's
> easier to be used for metrics which combines multiple fields from
> structure c2c_stats.

Same as the previous one.

Thanks,
Namhyung


>
> Signed-off-by: Leo Yan <leo.yan@xxxxxxxxxx>
> ---
> tools/perf/builtin-c2c.c | 17 ++++++++++-------
> 1 file changed, 10 insertions(+), 7 deletions(-)
>
> diff --git a/tools/perf/builtin-c2c.c b/tools/perf/builtin-c2c.c
> index f11c3c84bb2b..50018bfb1089 100644
> --- a/tools/perf/builtin-c2c.c
> +++ b/tools/perf/builtin-c2c.c
> @@ -1324,23 +1324,26 @@ node_entry(struct perf_hpp_fmt *fmt __maybe_unused, struct perf_hpp *hpp,
> ret = scnprintf(hpp->buf, hpp->size, "%2d{%2d ", node, num);
> advance_hpp(hpp, ret);
>
> - #define DISPLAY_HITM(__h) \
> - if (c2c_he->stats.__h> 0) { \
> + #define DISPLAY_METRICS(val, sum) \
> + { \
> + if ((sum) > 0) { \
> ret = scnprintf(hpp->buf, hpp->size, "%5.1f%% ", \
> - percent(stats->__h, c2c_he->stats.__h));\
> + percent((val), (sum))); \
> } else { \
> ret = scnprintf(hpp->buf, hpp->size, "%6s ", "n/a"); \
> - }
> + } \
> + }
>
> switch (c2c.display) {
> case DISPLAY_RMT:
> - DISPLAY_HITM(rmt_hitm);
> + DISPLAY_METRICS(stats->rmt_hitm, c2c_he->stats.rmt_hitm);
> break;
> case DISPLAY_LCL:
> - DISPLAY_HITM(lcl_hitm);
> + DISPLAY_METRICS(stats->lcl_hitm, c2c_he->stats.lcl_hitm);
> break;
> case DISPLAY_TOT:
> - DISPLAY_HITM(tot_hitm);
> + DISPLAY_METRICS(stats->tot_hitm, c2c_he->stats.tot_hitm);
> + break;
> default:
> break;
> }
> --
> 2.17.1
>