diff options
author | Athira Rajeev <atrajeev@linux.vnet.ibm.com> | 2024-07-18 10:43:56 +0200 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2024-07-31 21:12:59 +0200 |
commit | f1e9347c855de73d8df1b0fa763184a46548d62f (patch) | |
tree | f24ed7fcc94930b0f3ae77a846be1ddf28c592c2 | |
parent | perf annotate: Make capstone_init non-static so that it can be used during sy... (diff) | |
download | linux-f1e9347c855de73d8df1b0fa763184a46548d62f.tar.xz linux-f1e9347c855de73d8df1b0fa763184a46548d62f.zip |
perf annotate: Use capstone_init and remove open_capstone_handle from disasm.c
capstone_init is made availbale for all archs to use and updated to
enable support for CS_ARCH_PPC as well. Patch removes
open_capstone_handle and uses capstone_init in all the places.
Committer notes:
Avoid including capstone/capstone.h from print_insn.h to not break the
build in builtin-script.c due to the namespace clash with libbpf:
/usr/include/capstone/bpf.h:94:14: error: 'bpf_insn' defined as wrong kind of tag
Reviewed-by: Kajol Jain <kjain@linux.ibm.com>
Reviewed-by: Namhyung Kim <namhyung@kernel.org>
Signed-off-by: Athira Rajeev <atrajeev@linux.vnet.ibm.com>
Tested-by: Kajol Jain <kjain@linux.ibm.com>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Akanksha J N <akanksha@linux.ibm.com>
Cc: Christophe Leroy <christophe.leroy@csgroup.eu>
Cc: Disha Goel <disgoel@linux.vnet.ibm.com>
Cc: Hari Bathini <hbathini@linux.ibm.com>
Cc: Ian Rogers <irogers@google.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Madhavan Srinivasan <maddy@linux.ibm.com>
Cc: Segher Boessenkool <segher@kernel.crashing.org>
Link: https://lore.kernel.org/lkml/20240718084358.72242-14-atrajeev@linux.vnet.ibm.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
-rw-r--r-- | tools/perf/util/disasm.c | 2 | ||||
-rw-r--r-- | tools/perf/util/print_insn.c | 2 | ||||
-rw-r--r-- | tools/perf/util/print_insn.h | 5 |
3 files changed, 4 insertions, 5 deletions
diff --git a/tools/perf/util/disasm.c b/tools/perf/util/disasm.c index 3d25443e1162..7a11edefe1bd 100644 --- a/tools/perf/util/disasm.c +++ b/tools/perf/util/disasm.c @@ -1512,6 +1512,8 @@ symbol__disassemble_bpf_image(struct symbol *sym, #ifdef HAVE_LIBCAPSTONE_SUPPORT #include <capstone/capstone.h> +int capstone_init(struct machine *machine, csh *cs_handle, bool is64, bool disassembler_style); + static int open_capstone_handle(struct annotate_args *args, bool is_64bit, csh *handle) { diff --git a/tools/perf/util/print_insn.c b/tools/perf/util/print_insn.c index a76aae81d7a0..a33a7726422d 100644 --- a/tools/perf/util/print_insn.c +++ b/tools/perf/util/print_insn.c @@ -32,6 +32,8 @@ size_t sample__fprintf_insn_raw(struct perf_sample *sample, FILE *fp) #ifdef HAVE_LIBCAPSTONE_SUPPORT #include <capstone/capstone.h> +int capstone_init(struct machine *machine, csh *cs_handle, bool is64, bool disassembler_style); + int capstone_init(struct machine *machine, csh *cs_handle, bool is64, bool disassembler_style) { cs_arch arch; diff --git a/tools/perf/util/print_insn.h b/tools/perf/util/print_insn.h index 2c8ee41c4a5d..07d11af3fc1c 100644 --- a/tools/perf/util/print_insn.h +++ b/tools/perf/util/print_insn.h @@ -19,9 +19,4 @@ ssize_t fprintf_insn_asm(struct machine *machine, struct thread *thread, u8 cpum bool is64bit, const uint8_t *code, size_t code_size, uint64_t ip, int *lenp, int print_opts, FILE *fp); -#ifdef HAVE_LIBCAPSTONE_SUPPORT -#include <capstone/capstone.h> -int capstone_init(struct machine *machine, csh *cs_handle, bool is64, bool disassembler_style); -#endif - #endif /* PERF_PRINT_INSN_H */ |