[PATCH] libbpf: optimize the redundant code in the bpf_object__init_user_btf_maps() function.
From: Jianyun Gao
Date: Fri Oct 24 2025 - 02:08:11 EST
In the elf_sec_data() function, the input parameter 'scn' will be
evaluated. If it is NULL, then it will directly return NULL. Therefore,
the return value of the elf_sec_data() function already takes into
account the case where the input parameter scn is NULL. Therefore,
subsequently, the code only needs to check whether the return value of
the elf_sec_data() function is NULL.
Signed-off-by: Jianyun Gao <jianyungao89@xxxxxxxxx>
---
tools/lib/bpf/libbpf.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/tools/lib/bpf/libbpf.c b/tools/lib/bpf/libbpf.c
index b90574f39d1c..9e66104a61eb 100644
--- a/tools/lib/bpf/libbpf.c
+++ b/tools/lib/bpf/libbpf.c
@@ -2988,15 +2988,15 @@ static int bpf_object__init_user_btf_maps(struct bpf_object *obj, bool strict,
int nr_types, i, vlen, err;
const struct btf_type *t;
const char *name;
- Elf_Data *data;
+ Elf_Data *scn_data;
Elf_Scn *scn;
if (obj->efile.btf_maps_shndx < 0)
return 0;
scn = elf_sec_by_idx(obj, obj->efile.btf_maps_shndx);
- data = elf_sec_data(obj, scn);
- if (!scn || !data) {
+ scn_data = elf_sec_data(obj, scn);
+ if (!scn_data) {
pr_warn("elf: failed to get %s map definitions for %s\n",
MAPS_ELF_SEC, obj->path);
return -EINVAL;
--
2.34.1