aboutsummaryrefslogtreecommitdiffstats
path: root/tools/lib/bpf/libbpf_probes.c
diff options
context:
space:
mode:
authorAlexei Starovoitov <ast@kernel.org>2020-01-20 16:53:47 -0800
committerDaniel Borkmann <daniel@iogearbox.net>2020-01-22 23:04:53 +0100
commit2db6eab18b9778d55f48c804f8efebd7097e7958 (patch)
treead350f22004bb7f7ba18e81277e58bb64d2480f0 /tools/lib/bpf/libbpf_probes.c
parentbpf: Introduce dynamic program extensions (diff)
downloadlinux-dev-2db6eab18b9778d55f48c804f8efebd7097e7958.tar.xz
linux-dev-2db6eab18b9778d55f48c804f8efebd7097e7958.zip
libbpf: Add support for program extensions
Add minimal support for program extensions. bpf_object_open_opts() needs to be called with attach_prog_fd = target_prog_fd and BPF program extension needs to have in .c file section definition like SEC("freplace/func_to_be_replaced"). libbpf will search for "func_to_be_replaced" in the target_prog_fd's BTF and will pass it in attach_btf_id to the kernel. This approach works for tests, but more compex use case may need to request function name (and attach_btf_id that kernel sees) to be more dynamic. Such API will be added in future patches. Signed-off-by: Alexei Starovoitov <ast@kernel.org> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net> Acked-by: John Fastabend <john.fastabend@gmail.com> Acked-by: Andrii Nakryiko <andriin@fb.com> Acked-by: Toke Høiland-Jørgensen <toke@redhat.com> Link: https://lore.kernel.org/bpf/20200121005348.2769920-3-ast@kernel.org
Diffstat (limited to '')
-rw-r--r--tools/lib/bpf/libbpf_probes.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/tools/lib/bpf/libbpf_probes.c b/tools/lib/bpf/libbpf_probes.c
index 8cc992bc532a..b782ebef6ac9 100644
--- a/tools/lib/bpf/libbpf_probes.c
+++ b/tools/lib/bpf/libbpf_probes.c
@@ -107,6 +107,7 @@ probe_load(enum bpf_prog_type prog_type, const struct bpf_insn *insns,
case BPF_PROG_TYPE_CGROUP_SOCKOPT:
case BPF_PROG_TYPE_TRACING:
case BPF_PROG_TYPE_STRUCT_OPS:
+ case BPF_PROG_TYPE_EXT:
default:
break;
}