Re: [PATCH] perf stat: Zero ena and run for interval mode

From: Jiri Olsa
Date: Thu Apr 09 2020 - 11:43:45 EST


On Thu, Apr 09, 2020 at 03:07:55PM +0800, Jin Yao wrote:
> As the code comments in perf_stat_process_counter() say,
> we calculate counter's data every interval, and the display
> code shows ps->res_stats avg value. We need to zero the stats
> for interval mode.
>
> But the current code only zeros the res_stats[0], it doesn't
> zero the res_stats[1] and res_stats[2], which are for ena
> and run of counter.
>
> This patch zeros the whole res_stats[] for interval mode.
>
> Signed-off-by: Jin Yao <yao.jin@xxxxxxxxxxxxxxx>

nice catch ;-)

Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>

thanks,
jirka

> ---
> tools/perf/util/stat.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/tools/perf/util/stat.c b/tools/perf/util/stat.c
> index 5f26137b8d60..242476eb808c 100644
> --- a/tools/perf/util/stat.c
> +++ b/tools/perf/util/stat.c
> @@ -368,8 +368,10 @@ int perf_stat_process_counter(struct perf_stat_config *config,
> * interval mode, otherwise overall avg running
> * averages will be shown for each interval.
> */
> - if (config->interval)
> - init_stats(ps->res_stats);
> + if (config->interval) {
> + for (i = 0; i < 3; i++)
> + init_stats(&ps->res_stats[i]);
> + }
>
> if (counter->per_pkg)
> zero_per_pkg(counter);
> --
> 2.17.1
>