linux/tools/bpf
Yichong Chen bda6a7308e bpftool: Fix vmlinux BTF leak in cgroup commands
bpftool cgroup show and tree call libbpf_find_kernel_btf() to
resolve attach_btf names, but never release the returned BTF object.

For cgroup tree, do_show_tree_fn() is called once for each cgroup
visited by nftw(). When more than one cgroup has attached programs,
each callback overwrites btf_vmlinux with a new object and loses the
previous allocation.

Load vmlinux BTF only once during a tree walk and release it when
cgroup show or tree completes. Reset btf_vmlinux_id at the same time
so batch mode starts with clean state.

Fixes: 596f5fb2ea ("bpftool: implement cgroup tree for BPF_LSM_CGROUP")
Signed-off-by: Yichong Chen <chenyichong@uniontech.com>
Reviewed-by: Quentin Monnet <qmo@kernel.org>
Link: https://lore.kernel.org/r/24357C69B4405079+20260617090117.280222-1-chenyichong@uniontech.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
2026-06-21 18:02:10 -07:00
..
bpftool bpftool: Fix vmlinux BTF leak in cgroup commands 2026-06-21 18:02:10 -07:00
resolve_btfids bpf: Support struct btf_struct_meta via KF_IMPLICIT_ARGS 2026-03-29 09:56:06 -07:00
.gitignore
bpf_asm.c
bpf_dbg.c
bpf_exp.l
bpf_exp.y
bpf_jit_disasm.c tools/bpf_jit_disasm: Fix potential negative tpath index in get_exec_path() 2025-06-12 19:11:13 -07:00
Makefile tools/bpf: build: Append extra cflags 2026-06-14 17:32:53 -07:00