OSDN Git Service

bpftool: Support printing opcodes and source file references in CFG
authorQuentin Monnet <quentin@isovalent.com>
Wed, 5 Apr 2023 13:21:19 +0000 (14:21 +0100)
committerAlexei Starovoitov <ast@kernel.org>
Thu, 6 Apr 2023 04:27:27 +0000 (21:27 -0700)
commit7483a7a70a12d7c00c9f80574d533b01689d39a7
tree48cade4a372739780e2bf09db0a13ff3c7aa400d
parent9b79f02722bbf24f060b2ab79513ad6e22c8e2f0
bpftool: Support printing opcodes and source file references in CFG

Add support for displaying opcodes or/and file references (filepath,
line and column numbers) when dumping the control flow graphs of loaded
BPF programs with bpftool.

The filepaths in the records are absolute. To avoid blocks on the graph
to get too wide, we truncate them when they get too long (but we always
keep the entire file name). In the unlikely case where the resulting
file name is ambiguous, it remains possible to get the full path with a
regular dump (no CFG).

Signed-off-by: Quentin Monnet <quentin@isovalent.com>
Link: https://lore.kernel.org/r/20230405132120.59886-7-quentin@isovalent.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
tools/bpf/bpftool/btf_dumper.c
tools/bpf/bpftool/cfg.c
tools/bpf/bpftool/cfg.h
tools/bpf/bpftool/main.h
tools/bpf/bpftool/prog.c
tools/bpf/bpftool/xlated_dumper.c
tools/bpf/bpftool/xlated_dumper.h