On Tue, 2026-05-12 at 13:59 +0800, Kaitao cheng wrote: > From: Kaitao Cheng <[email protected]> > > Allow users to remove any node from a linked list. > > We have added an additional parameter bpf_list_head *head to > bpf_list_del, as the verifier requires the head parameter to > check whether the lock is being held. > > Signed-off-by: Kaitao Cheng <[email protected]> > ---
Reviewed-by: Eduard Zingerman <[email protected]> [...] > @@ -11456,7 +11459,8 @@ static bool check_kfunc_is_graph_node_api(struct > bpf_verifier_env *env, > > switch (node_field_type) { > case BPF_LIST_NODE: > - ret = is_bpf_list_push_kfunc(kfunc_btf_id); > + ret = is_bpf_list_push_kfunc(kfunc_btf_id) || > + kfunc_btf_id == special_kfunc_list[KF_bpf_list_del]; Nit: to keep everything in the same style, maybe add a is_bpf_list_del_kfunc() helper? > break; > case BPF_RB_NODE: > ret = (is_bpf_rbtree_add_kfunc(kfunc_btf_id) ||

