On Fri, 2025-07-11 at 17:57 +0800, Yafang Shao wrote: > On Fri, Jul 11, 2025 at 1:19 AM Alexei Starovoitov > <alexei.starovoi...@gmail.com> wrote: > > > > On Thu, Jul 10, 2025 at 9:27 AM KaFai Wan <mannka...@gmail.com> > > wrote: > > > > > > Show the precise rejected function name when attaching tracing to > > > __btf_id functions. > > > > > > $ ./fentry > > > libbpf: prog 'migrate_disable': BPF program load failed: -EINVAL > > > libbpf: prog 'migrate_disable': -- BEGIN PROG LOAD LOG -- > > > Attaching tracing to __btf_id function 'migrate_disable' is > > > rejected. > > > > > > Signed-off-by: KaFai Wan <mannka...@gmail.com> > > > --- > > > kernel/bpf/verifier.c | 2 ++ > > > 1 file changed, 2 insertions(+) > > > > > > diff --git a/kernel/bpf/verifier.c b/kernel/bpf/verifier.c > > > index 275d82fb1a1a..2779d63e1f8b 100644 > > > --- a/kernel/bpf/verifier.c > > > +++ b/kernel/bpf/verifier.c > > > @@ -23938,6 +23938,8 @@ static int check_attach_btf_id(struct > > > bpf_verifier_env *env) > > > return ret; > > > } else if (prog->type == BPF_PROG_TYPE_TRACING && > > > btf_id_set_contains(&btf_id_deny, btf_id)) { > > > + verbose(env, "Attaching tracing to __btf_id > > > function '%s' is rejected.\n", > > > + tgt_info.tgt_name); > > > > "Attaching tracing to __btf_id" ?! What does it mean? > > The term "tracing" refers to BPF_PROG_TYPE_TRACING. I believe it is > useful because it helps identify which functions cannot be attached > by > a given BPF program type.
Thanks, this is what I want to express. > Perhaps we should replace "tracing" with "a tracing prog" for > clarity? Looks good, may be 'tracing programs' could be fine. > > > Drop "__btf_id" and "tracing" bits. > -- Thanks, KaFai