Re: [PATCH v1 1/4] perf stat: Fix affinity memory leaks on error path

From: Namhyung Kim
Date: Mon Sep 30 2024 - 17:03:48 EST


On Tue, Sep 24, 2024 at 01:29:13PM -0700, Ian Rogers wrote:
> Missed cleanup when an error occurs.

I think there's one more place for this - after bpf_counter__load()
failed. You may add a new label to handle it together in the error
path.

Also it doesn't apply to the latest tree, please rebase!

Thanks,
Namhyung

>
> Fixes: 49de179577e7 ("perf stat: No need to setup affinities when starting a workload")
> Signed-off-by: Ian Rogers <irogers@xxxxxxxxxx>
> ---
> tools/perf/builtin-stat.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c
> index 689a3d43c258..cc55df3ccb18 100644
> --- a/tools/perf/builtin-stat.c
> +++ b/tools/perf/builtin-stat.c
> @@ -767,6 +767,7 @@ static int __run_perf_stat(int argc, const char **argv, int run_idx)
>
> switch (stat_handle_error(counter)) {
> case COUNTER_FATAL:
> + affinity__cleanup(affinity);
> return -1;
> case COUNTER_RETRY:
> goto try_again;
> @@ -808,6 +809,7 @@ static int __run_perf_stat(int argc, const char **argv, int run_idx)
>
> switch (stat_handle_error(counter)) {
> case COUNTER_FATAL:
> + affinity__cleanup(affinity);
> return -1;
> case COUNTER_RETRY:
> goto try_again_reset;
> --
> 2.46.0.792.g87dc391469-goog
>