]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
libbpf: don't close(-1) in multi-uprobe feature detector
authorAndrii Nakryiko <andrii@kernel.org>
Wed, 29 May 2024 23:12:12 +0000 (16:12 -0700)
committerAlexei Starovoitov <ast@kernel.org>
Fri, 31 May 2024 21:56:51 +0000 (14:56 -0700)
Guard close(link_fd) with extra link_fd >= 0 check to prevent close(-1).

Detected by Coverity static analysis.

Fixes: 04d939a2ab22 ("libbpf: detect broken PID filtering logic for multi-uprobe")
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Acked-by: Jiri Olsa <jolsa@kernel.org>
Link: https://lore.kernel.org/r/20240529231212.768828-1-andrii@kernel.org
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
tools/lib/bpf/features.c

index 3df0125ed5fa7aae35673bf266029a356f19c147..50befe125ddc550997fc0c8452c05c8e6f955579 100644 (file)
@@ -393,7 +393,8 @@ static int probe_uprobe_multi_link(int token_fd)
        err = -errno; /* close() can clobber errno */
 
        if (link_fd >= 0 || err != -EBADF) {
-               close(link_fd);
+               if (link_fd >= 0)
+                       close(link_fd);
                close(prog_fd);
                return 0;
        }