Re: [PATCH v1 1/2] perf disasm: Fix memory leak for locked operations

From: Arnaldo Carvalho de Melo
Date: Tue Aug 13 2024 - 10:53:36 EST


On Mon, Aug 12, 2024 at 09:06:12PM -0700, Ian Rogers wrote:
> lock__parse calls disasm_line__parse passing
> &ops->locked.ins.name. Ensure ops->locked.ins.name is freed in
> lock__delete.
>
> Found with lock/leak sanitizer.

Applied both patches to perf-tools-next.

Thanks,

- Arnaldo

> Signed-off-by: Ian Rogers <irogers@xxxxxxxxxx>
> ---
> tools/perf/util/disasm.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/tools/perf/util/disasm.c b/tools/perf/util/disasm.c
> index 22289003e16d..226d2181f694 100644
> --- a/tools/perf/util/disasm.c
> +++ b/tools/perf/util/disasm.c
> @@ -566,6 +566,7 @@ static void lock__delete(struct ins_operands *ops)
> ins_ops__delete(ops->locked.ops);
>
> zfree(&ops->locked.ops);
> + zfree(&ops->locked.ins.name);
> zfree(&ops->target.raw);
> zfree(&ops->target.name);
> }
> --
> 2.46.0.76.ge559c4bf1a-goog