From: Andrii Nakryiko Date: Wed, 29 May 2024 23:12:12 +0000 (-0700) Subject: libbpf: don't close(-1) in multi-uprobe feature detector X-Git-Tag: v6.10-rc3~27^2~6^2~5 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=7d0b3953f6d832daec10a0d76e2d4db405768a8b;p=thirdparty%2Fkernel%2Flinux.git libbpf: don't close(-1) in multi-uprobe feature detector 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 Acked-by: Jiri Olsa Link: https://lore.kernel.org/r/20240529231212.768828-1-andrii@kernel.org Signed-off-by: Alexei Starovoitov --- diff --git a/tools/lib/bpf/features.c b/tools/lib/bpf/features.c index 3df0125ed5fa7..50befe125ddc5 100644 --- a/tools/lib/bpf/features.c +++ b/tools/lib/bpf/features.c @@ -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; }