Re: [PATCHv5 bpf-next 13/28] bpf: Add support for tracing multi link
Jiri Olsa <[email protected]>
| Newsgroups | dev.linux.lists.sashiko,org.kernel.vger.bpf |
|---|---|
| Message-ID | <aec7woEWsDxnDvqv@krava> |
On Sat, Apr 18, 2026 at 08:58:39AM +0000, [email protected] wrote: > Sashiko AI review found 1 potential issue(s): > - [Low] The patch references several undeclared identifiers and incomplete types, causing compilation failures. > -- > > commit fc7697083b71bebef41d2da3a91ca2a0741ad6f0 > Author: Jiri Olsa <[email protected]> > > bpf: Add support for tracing multi link > > Adding a new link to allow attaching a BPF program to multiple function > BTF IDs, represented by struct bpf_tracing_multi_link. > > > diff --git a/kernel/bpf/syscall.c b/kernel/bpf/syscall.c > > index a3c0214ca9341..da3e01dd7ee9a 100644 > > --- a/kernel/bpf/syscall.c > > +++ b/kernel/bpf/syscall.c > [ ... ] > > @@ -5748,6 +5748,8 @@ static int link_create(union bpf_attr *attr, bpfptr_t uattr) > > ret = bpf_iter_link_attach(attr, uattr, prog); > > else if (prog->expected_attach_type == BPF_LSM_CGROUP) > > ret = cgroup_bpf_link_attach(attr, prog); > > + else if (is_tracing_multi(prog->expected_attach_type)) > > + ret = bpf_tracing_multi_attach(prog, attr); > > Is is_tracing_multi() defined anywhere? It doesn't appear to be declared > in this patch or the existing kernel tree, which could lead to a build > failure. it's added in "bpf: Add multi tracing attach types" > > > diff --git a/kernel/trace/bpf_trace.c b/kernel/trace/bpf_trace.c > > index af7079aa0f36d..df06a733a2e71 100644 > > --- a/kernel/trace/bpf_trace.c > > +++ b/kernel/trace/bpf_trace.c > [ ... ] > > +static void bpf_tracing_multi_link_release(struct bpf_link *link) > > +{ > > + struct bpf_tracing_multi_link *tr_link = > > + container_of(link, struct bpf_tracing_multi_link, link); > > + > > + WARN_ON_ONCE(bpf_trampoline_multi_detach(link->prog, tr_link)); > > +} > > Where is struct bpf_tracing_multi_link defined? It seems to be an > incomplete type here. > > Similarly, bpf_trampoline_multi_detach() doesn't appear to be declared in > this patch. Will this cause compilation errors when dereferencing or > calling these? defined in previous patch "bpf: Add bpf_trampoline_multi_attach/detach functions" > > [ ... ] > > + err = bpf_link_prime(&link->link, &link_primer); > > + if (err) > > + goto error; > > + > > + link->nodes_cnt = cnt; > > + > > + err = bpf_trampoline_multi_attach(prog, ids, link); > > Does bpf_trampoline_multi_attach() also miss a declaration? defined in previous patch "bpf: Add bpf_trampoline_multi_attach/detach functions" what do I miss? ;-) jirka