Re: [PATCH 2/2] perf stat: Fix invalid output handle

From: Namhyung Kim
Date: Wed Nov 30 2022 - 13:33:21 EST


On Wed, Nov 30, 2022 at 3:15 AM James Clark <james.clark@xxxxxxx> wrote:
>
> In this context, 'os' is already a pointer so the extra dereference
> isn't required. This fixes the following test failure on aarch64:
>
> $ ./perf test "json output" -vvv
> 92: perf stat JSON output linter :
> --- start ---
> Checking json output: no args Test failed for input:
> ...
> Fatal error: glibc detected an invalid stdio handle
> ---- end ----
> perf stat JSON output linter: FAILED!
>
> Fixes: e7f4da312259 ("perf stat: Pass struct outstate to printout()")
> Signed-off-by: James Clark <james.clark@xxxxxxx>

Thanks for fixing this. I'm not sure how I missed it.. :(

Acked-by: Namhyung Kim <namhyung@xxxxxxxxxx>

Thanks,
Namhyung


> ---
> tools/perf/util/stat-display.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/perf/util/stat-display.c b/tools/perf/util/stat-display.c
> index 847acdb5dc40..eac5ac3a734c 100644
> --- a/tools/perf/util/stat-display.c
> +++ b/tools/perf/util/stat-display.c
> @@ -741,7 +741,7 @@ static void printout(struct perf_stat_config *config, struct outstate *os,
> perf_stat__print_shadow_stats(config, counter, uval, map_idx,
> &out, &config->metric_events, &rt_stat);
> } else {
> - pm(config, &os, /*color=*/NULL, /*format=*/NULL, /*unit=*/"", /*val=*/0);
> + pm(config, os, /*color=*/NULL, /*format=*/NULL, /*unit=*/"", /*val=*/0);
> }
>
> if (!config->metric_only) {
> --
> 2.25.1
>