mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-30 22:26:55 +00:00
perf header: Fix one memory leakage in perf_event__fprintf_event_update()
[ Upstream commit813900d19b
] When dump the raw trace by `perf report -D` ASan reports a memory leakage in perf_event__fprintf_event_update(). It shows that we allocated a temporary cpumap for dumping the CPUs but doesn't release it and it's not used elsewhere. Fix this by free the cpumap after the dumping. Fixes:c853f9394b
("perf tools: Add perf_event__fprintf_event_update function") Reviewed-by: Ian Rogers <irogers@google.com> Signed-off-by: Yicong Yang <yangyicong@hisilicon.com> Acked-by: Namhyung Kim <namhyung@kernel.org> Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Cc: Ingo Molnar <mingo@redhat.com> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Jonathan Cameron <jonathan.cameron@huawei.com> Cc: Junhao He <hejunhao3@huawei.com> Cc: Mark Rutland <mark.rutland@arm.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: linuxarm@huawei.com Link: https://lore.kernel.org/r/20231207081635.8427-2-yangyicong@huawei.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
2c664df0b2
commit
f8d47ca678
1 changed files with 3 additions and 2 deletions
|
@ -4363,9 +4363,10 @@ size_t perf_event__fprintf_event_update(union perf_event *event, FILE *fp)
|
||||||
ret += fprintf(fp, "... ");
|
ret += fprintf(fp, "... ");
|
||||||
|
|
||||||
map = cpu_map__new_data(&ev->cpus.cpus);
|
map = cpu_map__new_data(&ev->cpus.cpus);
|
||||||
if (map)
|
if (map) {
|
||||||
ret += cpu_map__fprintf(map, fp);
|
ret += cpu_map__fprintf(map, fp);
|
||||||
else
|
perf_cpu_map__put(map);
|
||||||
|
} else
|
||||||
ret += fprintf(fp, "failed to get cpus\n");
|
ret += fprintf(fp, "failed to get cpus\n");
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
|
Loading…
Reference in a new issue