2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-15 08:44:14 +08:00
linux-next/tools/bpf/bpftool
Quentin Monnet 4d374ba0bf tools: bpftool: implement "bpftool btf show|list"
Add a "btf list" (alias: "btf show") subcommand to bpftool in order to
dump all BTF objects loaded on a system.

When running the command, hash tables are built in bpftool to retrieve
all the associations between BTF objects and BPF maps and programs. This
allows for printing all such associations when listing the BTF objects.

The command is added at the top of the subcommands for "bpftool btf", so
that typing only "bpftool btf" also comes down to listing the programs.
We could not have this with the previous command ("dump"), which
required a BTF object id, so it should not break any previous behaviour.
This also makes the "btf" command behaviour consistent with "prog" or
"map".

Bash completion is updated to use "bpftool btf" instead of "bpftool
prog" to list the BTF ids, as it looks more consistent.

Example output (plain):

    # bpftool btf show
    9: size 2989B  prog_ids 21  map_ids 15
    17: size 2847B  prog_ids 36  map_ids 30,29,28
    26: size 2847B

Signed-off-by: Quentin Monnet <quentin.monnet@netronome.com>
Reviewed-by: Jakub Kicinski <jakub.kicinski@netronome.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
2019-08-20 09:51:06 -07:00
..
bash-completion tools: bpftool: implement "bpftool btf show|list" 2019-08-20 09:51:06 -07:00
Documentation tools: bpftool: implement "bpftool btf show|list" 2019-08-20 09:51:06 -07:00
.gitignore bpftool: exclude bash-completion/bpftool from .gitignore pattern 2019-05-04 23:43:57 -07:00
btf_dumper.c tools: bpftool: fix format strings and arguments for jsonw_printf() 2019-08-15 22:06:46 -07:00
btf.c tools: bpftool: implement "bpftool btf show|list" 2019-08-20 09:51:06 -07:00
cfg.c tools: bpftool: teach cfg code about JMP32 2019-01-26 13:33:01 -08:00
cfg.h tools: bpftool: replace Netronome boilerplate with SPDX license headers 2018-12-13 12:08:44 +01:00
cgroup.c tools: bpftool: compile with $(EXTRA_WARNINGS) 2019-08-14 22:57:36 +02:00
common.c tools: bpftool: move "__printf()" attributes to header file 2019-08-15 22:06:46 -07:00
feature.c tools: bpftool: fix reading from /proc/config.gz 2019-08-12 11:07:16 +02:00
jit_disasm.c tools: bpftool: Fix json dump crash on powerpc 2019-07-05 23:50:38 +02:00
json_writer.c tools: bpftool: move "__printf()" attributes to header file 2019-08-15 22:06:46 -07:00
json_writer.h tools: bpftool: move "__printf()" attributes to header file 2019-08-15 22:06:46 -07:00
main.c tools: bpftool: fix format string for p_err() in detect_common_prefix() 2019-08-15 22:06:46 -07:00
main.h tools: bpftool: move "__printf()" attributes to header file 2019-08-15 22:06:46 -07:00
Makefile tools: bpftool: compile with $(EXTRA_WARNINGS) 2019-08-14 22:57:36 +02:00
map_perf_ring.c tools: bpftool: fix arguments for p_err() in do_event_pipe() 2019-08-15 22:06:46 -07:00
map.c tools: Add definitions for devmap_hash map type 2019-07-29 13:50:48 -07:00
net.c tools: bpftool: fix format string for p_err() in query_flow_dissector() 2019-08-15 22:06:46 -07:00
netlink_dumper.c tools: bpftool: dual license all files 2018-12-13 12:08:44 +01:00
netlink_dumper.h tools: bpftool: dual license all files 2018-12-13 12:08:44 +01:00
perf.c tools: bpftool: compile with $(EXTRA_WARNINGS) 2019-08-14 22:57:36 +02:00
prog.c tools: bpftool: add "prog run" subcommand to test-run programs 2019-07-05 23:48:07 +02:00
tracelog.c tools: bpftool: add an option to prevent auto-mount of bpffs, tracefs 2018-12-18 14:47:17 +01:00
xlated_dumper.c bpf: style fix in while(!feof()) loop 2019-05-28 10:54:01 +02:00
xlated_dumper.h tools: bpftool: replace Netronome boilerplate with SPDX license headers 2018-12-13 12:08:44 +01:00