]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
libbpf: Introduce bpf_program__clone()
authorMykyta Yatsenko <yatsenko@meta.com>
Tue, 17 Mar 2026 17:39:21 +0000 (10:39 -0700)
committerAlexei Starovoitov <ast@kernel.org>
Sat, 21 Mar 2026 20:17:13 +0000 (13:17 -0700)
commit970bd2dced35632ce1c9e38943354d5389d80ca0
treea9efca629f502dbecf465a855735201de4d3c234
parentf4706504e2c82523af7f12059940121c09d8d6bd
libbpf: Introduce bpf_program__clone()

Add bpf_program__clone() API that loads a single BPF program from a
prepared BPF object into the kernel, returning a file descriptor owned
by the caller.

After bpf_object__prepare(), callers can use bpf_program__clone() to
load individual programs with custom bpf_prog_load_opts, instead of
loading all programs at once via bpf_object__load(). Non-zero fields in
opts override the defaults derived from the program and object
internals; passing NULL opts populates everything automatically.

Signed-off-by: Mykyta Yatsenko <yatsenko@meta.com>
Reviewed-by: Emil Tsalapatis <emil@etsalapatis.com>
Link: https://lore.kernel.org/r/20260317-veristat_prepare-v4-1-74193d4cc9d9@meta.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
tools/lib/bpf/libbpf.c
tools/lib/bpf/libbpf.h
tools/lib/bpf/libbpf.map