The requested resources should be closed before return in main(), otherwise
resource leak will occur. Add a check of cg_fd before close().

Fixes: 1f5fa9ab6e2e ("selftests/bpf: Test BPF_CGROUP_SYSCTL")
Signed-off-by: Ma Ke <mak...@iscas.ac.cn>
---
 tools/testing/selftests/bpf/test_sysctl.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/tools/testing/selftests/bpf/test_sysctl.c 
b/tools/testing/selftests/bpf/test_sysctl.c
index bcdbd27f22f0..242246ba8d1e 100644
--- a/tools/testing/selftests/bpf/test_sysctl.c
+++ b/tools/testing/selftests/bpf/test_sysctl.c
@@ -1627,7 +1627,8 @@ int main(int argc, char **argv)
 err:
        err = -1;
 out:
-       close(cgfd);
+       if (cgfd >= 0)
+               close(cgfd);
        cleanup_cgroup_environment();
        return err;
 }
-- 
2.25.1


Reply via email to