From: Arnaldo Carvalho de Melo Date: Fri, 10 Sep 2021 20:26:53 +0000 (-0300) Subject: perf bpf: Provide a weak btf__load_from_kernel_by_id() for older libbpf versions X-Git-Tag: microblaze-v5.16~2^2~10 X-Git-Url: http://git.monstr.eu/?p=linux-2.6-microblaze.git;a=commitdiff_plain;h=218e7b775d368f38d85d73e52900b082f004e5f1;hp=37ce9e4fc596cf10a4d32ced741679bd1b4fa7a5 perf bpf: Provide a weak btf__load_from_kernel_by_id() for older libbpf versions The btf__get_from_id() function was deprecated in favour of btf__load_from_kernel_by_id(), but it is still avaiable, so use it to provide a weak function btf__load_from_kernel_by_id() for older libbpf when building perf with LIBBPF_DYNAMIC=1, i.e. using the system's libbpf package. Signed-off-by: Arnaldo Carvalho de Melo --- diff --git a/tools/perf/util/bpf-event.c b/tools/perf/util/bpf-event.c index 996d025b8ed8..683f6d63560e 100644 --- a/tools/perf/util/bpf-event.c +++ b/tools/perf/util/bpf-event.c @@ -21,6 +21,14 @@ #include "record.h" #include "util/synthetic-events.h" +struct btf * __weak btf__load_from_kernel_by_id(__u32 id) +{ + struct btf *btf; + int err = btf__get_from_id(id, &btf); + + return err ? ERR_PTR(err) : btf; +} + #define ptr_to_u64(ptr) ((__u64)(unsigned long)(ptr)) static int snprintf_hex(char *buf, size_t size, unsigned char *data, size_t len)