tools/resolve_btf_ids: Close ELF file on error
authorAndrii Nakryiko <andrii@kernel.org>
Wed, 24 Nov 2021 00:23:13 +0000 (16:23 -0800)
committerDaniel Borkmann <daniel@iogearbox.net>
Thu, 25 Nov 2021 23:14:06 +0000 (00:14 +0100)
Fix one case where we don't do explicit clean up.

Fixes: fbbb68de80a4 ("bpf: Add resolve_btfids tool to resolve BTF IDs in ELF object")
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Link: https://lore.kernel.org/bpf/20211124002325.1737739-2-andrii@kernel.org
tools/bpf/resolve_btfids/main.c

index a59cb0e..e9e6166 100644 (file)
@@ -167,7 +167,7 @@ static struct btf_id *btf_id__find(struct rb_root *root, const char *name)
        return NULL;
 }
 
-static struct btf_id*
+static struct btf_id *
 btf_id__add(struct rb_root *root, char *name, bool unique)
 {
        struct rb_node **p = &root->rb_node;
@@ -730,7 +730,8 @@ int main(int argc, const char **argv)
        if (obj.efile.idlist_shndx == -1 ||
            obj.efile.symbols_shndx == -1) {
                pr_debug("Cannot find .BTF_ids or symbols sections, nothing to do\n");
-               return 0;
+               err = 0;
+               goto out;
        }
 
        if (symbols_collect(&obj))