]> git.proxmox.com Git - mirror_ubuntu-kernels.git/commit
bpftool: Switch to libbpf's hashmap for PIDs/names references
authorQuentin Monnet <quentin@isovalent.com>
Sat, 23 Oct 2021 20:51:54 +0000 (21:51 +0100)
committerAndrii Nakryiko <andrii@kernel.org>
Tue, 26 Oct 2021 00:31:39 +0000 (17:31 -0700)
commitd6699f8e0f834b40db35466f704705ae757be11a
tree3e31240e3364c28bc0a4cdd1840b0c78018be12d
parent2828d0d75b738c9cd98080c530b7b7ea90b279dd
bpftool: Switch to libbpf's hashmap for PIDs/names references

In order to show PIDs and names for processes holding references to BPF
programs, maps, links, or BTF objects, bpftool creates hash maps to
store all relevant information. This commit is part of a set that
transitions from the kernel's hash map implementation to the one coming
with libbpf.

The motivation is to make bpftool less dependent of kernel headers, to
ease the path to a potential out-of-tree mirror, like libbpf has.

This is the third and final step of the transition, in which we convert
the hash maps used for storing the information about the processes
holding references to BPF objects (programs, maps, links, BTF), and at
last we drop the inclusion of tools/include/linux/hashtable.h.

Note: Checkpatch complains about the use of __weak declarations, and the
missing empty lines after the bunch of empty function declarations when
compiling without the BPF skeletons (none of these were introduced in
this patch). We want to keep things as they are, and the reports should
be safe to ignore.

Signed-off-by: Quentin Monnet <quentin@isovalent.com>
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20211023205154.6710-6-quentin@isovalent.com
tools/bpf/bpftool/btf.c
tools/bpf/bpftool/link.c
tools/bpf/bpftool/main.c
tools/bpf/bpftool/main.h
tools/bpf/bpftool/map.c
tools/bpf/bpftool/pids.c
tools/bpf/bpftool/prog.c