tools/perf/tests/event_update.c | 1 + 1 file changed, 1 insertion(+)
The own_cpus map variable may be non-NULL and hold a reference, in
particular on hybrid machines. Do a put before overwriting the
variable to avoid a memory leak.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/tests/event_update.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/tools/perf/tests/event_update.c b/tools/perf/tests/event_update.c
index d6b4ce3ef4ee..9301fde11366 100644
--- a/tools/perf/tests/event_update.c
+++ b/tools/perf/tests/event_update.c
@@ -109,6 +109,7 @@ static int test__event_update(struct test_suite *test __maybe_unused, int subtes
TEST_ASSERT_VAL("failed to synthesize attr update name",
!perf_event__synthesize_event_update_name(&tmp.tool, evsel, process_event_name));
+ perf_cpu_map__put(evsel->core.own_cpus);
evsel->core.own_cpus = perf_cpu_map__new("1,2,3");
TEST_ASSERT_VAL("failed to synthesize attr update cpus",
--
2.48.1.711.g2feabab25a-goog
On Wed, 05 Mar 2025 11:19:31 -0800, Ian Rogers wrote: > The own_cpus map variable may be non-NULL and hold a reference, in > particular on hybrid machines. Do a put before overwriting the > variable to avoid a memory leak. > > Applied to perf-tools-next, thanks! Best regards, Namhyung
On 05/03/2025 7:19 pm, Ian Rogers wrote:
> The own_cpus map variable may be non-NULL and hold a reference, in
> particular on hybrid machines. Do a put before overwriting the
> variable to avoid a memory leak.
>
> Signed-off-by: Ian Rogers <irogers@google.com>
> ---
> tools/perf/tests/event_update.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/tools/perf/tests/event_update.c b/tools/perf/tests/event_update.c
> index d6b4ce3ef4ee..9301fde11366 100644
> --- a/tools/perf/tests/event_update.c
> +++ b/tools/perf/tests/event_update.c
> @@ -109,6 +109,7 @@ static int test__event_update(struct test_suite *test __maybe_unused, int subtes
> TEST_ASSERT_VAL("failed to synthesize attr update name",
> !perf_event__synthesize_event_update_name(&tmp.tool, evsel, process_event_name));
>
> + perf_cpu_map__put(evsel->core.own_cpus);
> evsel->core.own_cpus = perf_cpu_map__new("1,2,3");
>
> TEST_ASSERT_VAL("failed to synthesize attr update cpus",
Reviewed-by: James Clark <james.clark@linaro.org>
© 2016 - 2026 Red Hat, Inc.