Messages in this thread Patch in this message | | | From | Yicong Yang <> | Subject | [PATCH 1/2] perf header: Fix one memory leakage in perf_event__fprintf_event_update() | Date | Thu, 7 Dec 2023 16:16:34 +0800 |
| |
From: Yicong Yang <yangyicong@hisilicon.com>
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: c853f9394b7b ("perf tools: Add perf_event__fprintf_event_update function") Cc: Jiri Olsa <jolsa@kernel.org> Signed-off-by: Yicong Yang <yangyicong@hisilicon.com> --- tools/perf/util/header.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/tools/perf/util/header.c b/tools/perf/util/header.c index e86b9439ffee..7190f39ccd13 100644 --- a/tools/perf/util/header.c +++ b/tools/perf/util/header.c @@ -4369,9 +4369,10 @@ size_t perf_event__fprintf_event_update(union perf_event *event, FILE *fp) ret += fprintf(fp, "... "); map = cpu_map__new_data(&ev->cpus.cpus); - if (map) + if (map) { ret += cpu_map__fprintf(map, fp); - else + perf_cpu_map__put(map); + } else ret += fprintf(fp, "failed to get cpus\n"); break; default: -- 2.24.0
| |