Re: [PATCH] selftests/bpf:fix a resource leak

From: Daniel Borkmann
Date: Fri Jun 28 2024 - 18:24:10 EST


On 6/27/24 8:01 AM, Zhu Jun wrote:
The requested resources should be closed before return
in main(), otherwise resource leak will occur

Signed-off-by: Zhu Jun <zhujun2@xxxxxxxxxxxxxxxxxxxx>
---
tools/testing/selftests/bpf/test_sockmap.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/testing/selftests/bpf/test_sockmap.c b/tools/testing/selftests/bpf/test_sockmap.c
index a34e95040994..03d5dd617c4a 100644
--- a/tools/testing/selftests/bpf/test_sockmap.c
+++ b/tools/testing/selftests/bpf/test_sockmap.c
@@ -2092,7 +2092,7 @@ int main(int argc, char **argv)
if (err) {
fprintf(stderr, "populate program: (%s) %s\n",
bpf_file, strerror(errno));
- return 1;
+ goto out;
}
running = 1;

There's one more when cgroup_setup_and_join() fails a bit higher up
where we end up leaking options.whitelist/options.blacklist. Maybe
could you reorder the free() towards the end, add a new label, set
err to cg_fd and jump there.

Thanks,
Daniel