Re: [PATCH bpf-next v3 2/4] bpf: Add log for attaching tracing programs to functions in deny list

From: Yafang Shao
Date: Wed Jul 23 2025 - 07:39:08 EST


On Tue, Jul 22, 2025 at 11:35 PM KaFai Wan <kafai.wan@xxxxxxxxx> wrote:
>
> Show the rejected function name when attaching tracing programs to
> functions in deny list.
>
> With this change, we know why tracing programs can't attach to functions
> like migrate_disable() from log.
>
> $ ./fentry
> libbpf: prog 'migrate_disable': BPF program load failed: -EINVAL
> libbpf: prog 'migrate_disable': -- BEGIN PROG LOAD LOG --
> Attaching tracing programs to function 'migrate_disable' is rejected.
>
> Suggested-by: Leon Hwang <leon.hwang@xxxxxxxxx>
> Signed-off-by: KaFai Wan <kafai.wan@xxxxxxxxx>

Acked-by: Yafang Shao <laoar.shao@xxxxxxxxx>

> ---
> kernel/bpf/verifier.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/kernel/bpf/verifier.c b/kernel/bpf/verifier.c
> index 00d287814f12..c24c0d57e595 100644
> --- a/kernel/bpf/verifier.c
> +++ b/kernel/bpf/verifier.c
> @@ -23942,6 +23942,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 programs to function '%s' is rejected.\n",
> + tgt_info.tgt_name);
> return -EINVAL;
> } else if ((prog->expected_attach_type == BPF_TRACE_FEXIT ||
> prog->expected_attach_type == BPF_MODIFY_RETURN) &&
> --
> 2.43.0
>


--
Regards
Yafang