BPF_PTR_POISON
rcu_assign_pointer(prog->aux->st_ops_assoc, BPF_PTR_POISON);
if (!st_ops_assoc || st_ops_assoc == BPF_PTR_POISON)
if (!st_ops_assoc || st_ops_assoc == BPF_PTR_POISON)
.func = BPF_PTR_POISON,
.ret_btf_id = BPF_PTR_POISON,
.arg2_btf_id = BPF_PTR_POISON,
WRITE_ONCE(node->owner, BPF_PTR_POISON);
WRITE_ONCE(node->owner, BPF_PTR_POISON);
if (cmpxchg(&node->owner, NULL, BPF_PTR_POISON))
if (cmpxchg(&node->owner, NULL, BPF_PTR_POISON)) {
.arg1_btf_id = BPF_PTR_POISON,
.arg1_btf_id = BPF_PTR_POISON,
if (fn->ret_btf_id == BPF_PTR_POISON) {
if (arg_btf_id == BPF_PTR_POISON) {
return fn->arg_btf_id[i] == BPF_PTR_POISON;