diff --git a/src/cc/libbpf.c b/src/cc/libbpf.c index 63938eb54889..e64032990297 100644 --- a/src/cc/libbpf.c +++ b/src/cc/libbpf.c @@ -1350,7 +1350,16 @@ int bpf_attach_raw_tracepoint(int progfd, const char *tp_name) bool bpf_has_kernel_btf(void) { - return libbpf_find_vmlinux_btf_id("bpf_prog_put", 0) > 0; + struct btf *btf; + int err; + + btf = btf__parse_raw("/sys/kernel/btf/vmlinux"); + err = libbpf_get_error(btf); + if (err) + return false; + + btf__free(btf); + return true; } int kernel_struct_has_field(const char *struct_name, const char *field_name)