2022-12-06 07:37:40

by Miaoqian Lin

[permalink] [raw]
Subject: [PATCH v2] bpftool: Fix memory leak in do_build_table_cb

strdup() allocates memory for path. We need to release the memory in
the following error path. Add free() to avoid memory leak.

Fixes: 8f184732b60b ("bpftool: Switch to libbpf's hashmap for pinned paths of BPF objects")
Signed-off-by: Miaoqian Lin <[email protected]>
---
changes in v2:
- move free(path); into error branch.
---
tools/bpf/bpftool/common.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/tools/bpf/bpftool/common.c b/tools/bpf/bpftool/common.c
index 0cdb4f711510..e7a11cff7245 100644
--- a/tools/bpf/bpftool/common.c
+++ b/tools/bpf/bpftool/common.c
@@ -499,6 +499,7 @@ static int do_build_table_cb(const char *fpath, const struct stat *sb,
if (err) {
p_err("failed to append entry to hashmap for ID %u, path '%s': %s",
pinned_info.id, path, strerror(errno));
+ free(path);
goto out_close;
}

--
2.25.1


2022-12-06 20:49:43

by patchwork-bot+netdevbpf

[permalink] [raw]
Subject: Re: [PATCH v2] bpftool: Fix memory leak in do_build_table_cb

Hello:

This patch was applied to bpf/bpf-next.git (master)
by Daniel Borkmann <[email protected]>:

On Tue, 6 Dec 2022 11:19:06 +0400 you wrote:
> strdup() allocates memory for path. We need to release the memory in
> the following error path. Add free() to avoid memory leak.
>
> Fixes: 8f184732b60b ("bpftool: Switch to libbpf's hashmap for pinned paths of BPF objects")
> Signed-off-by: Miaoqian Lin <[email protected]>
> ---
> changes in v2:
> - move free(path); into error branch.
>
> [...]

Here is the summary with links:
- [v2] bpftool: Fix memory leak in do_build_table_cb
https://git.kernel.org/bpf/bpf-next/c/fa55ef14ef4f

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html