Skip to content

Commit e05d5c2

Browse files
malayarout91Kernel Patches Daemon
authored and
Kernel Patches Daemon
committed
selftests/bpf: close the file descriptor to avoid resource leaks
Static Analyis for bench_htab_mem.c with cppcheck:error tools/testing/selftests/bpf/benchs/bench_htab_mem.c:284:3: error: Resource leak: fd [resourceLeak] tools/testing/selftests/bpf/prog_tests/sk_assign.c:41:3: error: Resource leak: tc [resourceLeak] fix the issue by closing the file descriptor (fd & tc) when read & fgets operation fails. Signed-off-by: Malaya Kumar Rout <[email protected]> Acked-by: Hou Tao <[email protected]>
1 parent f11a40d commit e05d5c2

File tree

2 files changed

+4
-1
lines changed

2 files changed

+4
-1
lines changed

tools/testing/selftests/bpf/benchs/bench_htab_mem.c

+1
Original file line numberDiff line numberDiff line change
@@ -281,6 +281,7 @@ static void htab_mem_read_mem_cgrp_file(const char *name, unsigned long *value)
281281
got = read(fd, buf, sizeof(buf) - 1);
282282
if (got <= 0) {
283283
*value = 0;
284+
close(fd);
284285
return;
285286
}
286287
buf[got] = 0;

tools/testing/selftests/bpf/prog_tests/sk_assign.c

+3-1
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,10 @@ configure_stack(void)
3737
tc = popen("tc -V", "r");
3838
if (CHECK_FAIL(!tc))
3939
return false;
40-
if (CHECK_FAIL(!fgets(tc_version, sizeof(tc_version), tc)))
40+
if (CHECK_FAIL(!fgets(tc_version, sizeof(tc_version), tc))) {
41+
pclose(tc);
4142
return false;
43+
}
4244
if (strstr(tc_version, ", libbpf "))
4345
prog = "test_sk_assign_libbpf.bpf.o";
4446
else

0 commit comments

Comments
 (0)