tools: Free BTF objects at various locations
[linux-2.6-microblaze.git] / tools / perf / util / bpf_counter.c
index 8150e03..beca551 100644 (file)
@@ -64,8 +64,8 @@ static char *bpf_target_prog_name(int tgt_fd)
        struct bpf_prog_info_linear *info_linear;
        struct bpf_func_info *func_info;
        const struct btf_type *t;
+       struct btf *btf = NULL;
        char *name = NULL;
-       struct btf *btf;
 
        info_linear = bpf_program__get_prog_info_linear(
                tgt_fd, 1UL << BPF_PROG_INFO_FUNC_INFO);
@@ -89,6 +89,7 @@ static char *bpf_target_prog_name(int tgt_fd)
        }
        name = strdup(btf__name_by_offset(btf, t->name_off));
 out:
+       btf__free(btf);
        free(info_linear);
        return name;
 }