diff options
| author | Ian Rogers <irogers@google.com> | 2025-10-05 14:22:05 -0700 |
|---|---|---|
| committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2025-10-06 16:35:28 -0300 |
| commit | aa04707f507e0f8161d1d8a4cef748a3d66b189a (patch) | |
| tree | d1ddc6e6a3f5f5ed9b46487d64f176007b6b7302 /tools/perf/util/libbfd.h | |
| parent | 9518e10c2b399cb97eb527f2a67a8d97f11c1910 (diff) | |
| download | linux-next-aa04707f507e0f8161d1d8a4cef748a3d66b189a.tar.gz linux-next-aa04707f507e0f8161d1d8a4cef748a3d66b189a.zip | |
perf dso: Support BPF programs in dso__read_symbol()
Set the buffer to the code in the BPF linear info. This enables BPF
JIT code disassembly by LLVM and capstone.
Move the common but minimal disassmble_bpf_image call to
disassemble_objdump so that it is only called after falling back to the
objdump option.
Similarly move the disassmble_bpf function to disassemble_objdump and
rename to disassmble_bpf_libbfd to make it clearer that this support
relies on libbfd.
Signed-off-by: Ian Rogers <irogers@google.com>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Alexandre Ghiti <alexghiti@rivosinc.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Athira Rajeev <atrajeev@linux.ibm.com>
Cc: Bill Wendling <morbo@google.com>
Cc: Charlie Jenkins <charlie@rivosinc.com>
Cc: Collin Funk <collin.funk1@gmail.com>
Cc: Dmitriy Vyukov <dvyukov@google.com>
Cc: Dr. David Alan Gilbert <linux@treblig.org>
Cc: Eric Biggers <ebiggers@kernel.org>
Cc: Haibo Xu <haibo1.xu@intel.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: James Clark <james.clark@linaro.org>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Justin Stitt <justinstitt@google.com>
Cc: Li Huafei <lihuafei1@huawei.com>
Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Nathan Chancellor <nathan@kernel.org>
Cc: Nick Desaulniers <nick.desaulniers+lkml@gmail.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Song Liu <song@kernel.org>
Cc: Stephen Brennan <stephen.s.brennan@oracle.com>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/util/libbfd.h')
| -rw-r--r-- | tools/perf/util/libbfd.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/tools/perf/util/libbfd.h b/tools/perf/util/libbfd.h index 7441e95f8ec0..e300f171d1bd 100644 --- a/tools/perf/util/libbfd.h +++ b/tools/perf/util/libbfd.h @@ -29,7 +29,7 @@ int libbfd__read_build_id(const char *filename, struct build_id *bid, bool block int libbfd_filename__read_debuglink(const char *filename, char *debuglink, size_t size); -int symbol__disassemble_bpf(struct symbol *sym, struct annotate_args *args); +int symbol__disassemble_bpf_libbfd(struct symbol *sym, struct annotate_args *args); #else // !defined(HAVE_LIBBFD_SUPPORT) #include "annotate.h" @@ -72,8 +72,8 @@ static inline int libbfd_filename__read_debuglink(const char *filename __always_ return -1; } -static inline int symbol__disassemble_bpf(struct symbol *sym __always_unused, - struct annotate_args *args __always_unused) +static inline int symbol__disassemble_bpf_libbfd(struct symbol *sym __always_unused, + struct annotate_args *args __always_unused) { return SYMBOL_ANNOTATE_ERRNO__NO_LIBOPCODES_FOR_BPF; } |
