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

Fixes: 435f90a338ae ("selftests/bpf: add a test case for sock_ops perf-event 
notification")
Signed-off-by: Ma Ke <mak...@iscas.ac.cn>
---
 tools/testing/selftests/bpf/test_tcpnotify_user.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/tools/testing/selftests/bpf/test_tcpnotify_user.c 
b/tools/testing/selftests/bpf/test_tcpnotify_user.c
index 595194453ff8..f81c60db586e 100644
--- a/tools/testing/selftests/bpf/test_tcpnotify_user.c
+++ b/tools/testing/selftests/bpf/test_tcpnotify_user.c
@@ -161,7 +161,8 @@ int main(int argc, char **argv)
        error = 0;
 err:
        bpf_prog_detach(cg_fd, BPF_CGROUP_SOCK_OPS);
-       close(cg_fd);
+       if (cg_fd >= 0)
+               close(cg_fd);
        cleanup_cgroup_environment();
        perf_buffer__free(pb);
        return error;
-- 
2.25.1


Reply via email to