Re: [PATCH] perf data convert json: Fix addr_location leak on time-filtered samples
From: Ian Rogers <irogers@google.com>
Date: 2026-06-06 15:47:50
Also in:
linux-perf-users
From: Ian Rogers <irogers@google.com>
Date: 2026-06-06 15:47:50
Also in:
linux-perf-users
On Sat, Jun 6, 2026 at 5:20 AM Tanushree Shah [off-list ref] wrote:
When samples are skipped due to time filtering in process_sample_event(),
the early return path bypasses addr_location__exit(), causing memory leaks
of thread, map, and maps references acquired by machine__resolve().
These references must be released through addr_location__exit() before
returning.
Fixes: 8e746e95c3e4 ("perf data: Allow filtering conversion by time range")
Signed-off-by: Tanushree Shah <redacted>Reviewed-by: Ian Rogers <irogers@google.com> Thanks, Ian
--- tools/perf/util/data-convert-json.c | 1 + 1 file changed, 1 insertion(+)diff --git a/tools/perf/util/data-convert-json.c b/tools/perf/util/data-convert-json.c index d526c91312ed..6a8d00c80394 100644 --- a/tools/perf/util/data-convert-json.c +++ b/tools/perf/util/data-convert-json.c@@ -177,6 +177,7 @@ static int process_sample_event(const struct perf_tool *tool, if (perf_time__ranges_skip_sample(c->ptime_range, c->range_num, sample->time)) { ++c->skipped; + addr_location__exit(&al); return 0; } --2.47.3