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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.