[PATCH] libbpf: fix multi-uprobe attach not working with dynamic symbols
From: Mateusz Bieganski
Date: Thu Mar 27 2025 - 06:09:43 EST
ENOENT is incorrectly propagated to caller, if requested symbol is
present in dynamic linker symbol table and not present in symbol table.
Signed-off-by: Mateusz Bieganski <bieganski.gm@xxxxxxxxx>
---
tools/lib/bpf/elf.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/tools/lib/bpf/elf.c b/tools/lib/bpf/elf.c
index 823f83ad819c..41839ef5bc97 100644
--- a/tools/lib/bpf/elf.c
+++ b/tools/lib/bpf/elf.c
@@ -439,8 +439,10 @@ int elf_resolve_syms_offsets(const char *binary_path, int cnt,
struct elf_sym *sym;
err = elf_sym_iter_new(&iter, elf_fd.elf, binary_path, sh_types[i], st_type);
- if (err == -ENOENT)
+ if (err == -ENOENT) {
+ err = 0;
continue;
+ }
if (err)
goto out;
--
2.39.5