Lines Matching refs:st_ops_assoc
1416 struct bpf_map *st_ops_assoc; in bpf_prog_assoc_struct_ops() local
1420 st_ops_assoc = rcu_dereference_protected(prog->aux->st_ops_assoc, in bpf_prog_assoc_struct_ops()
1422 if (st_ops_assoc && st_ops_assoc == map) in bpf_prog_assoc_struct_ops()
1425 if (st_ops_assoc) { in bpf_prog_assoc_struct_ops()
1429 rcu_assign_pointer(prog->aux->st_ops_assoc, BPF_PTR_POISON); in bpf_prog_assoc_struct_ops()
1438 rcu_assign_pointer(prog->aux->st_ops_assoc, map); in bpf_prog_assoc_struct_ops()
1446 struct bpf_map *st_ops_assoc; in bpf_prog_disassoc_struct_ops() local
1450 st_ops_assoc = rcu_dereference_protected(prog->aux->st_ops_assoc, in bpf_prog_disassoc_struct_ops()
1452 if (!st_ops_assoc || st_ops_assoc == BPF_PTR_POISON) in bpf_prog_disassoc_struct_ops()
1456 bpf_map_put(st_ops_assoc); in bpf_prog_disassoc_struct_ops()
1458 RCU_INIT_POINTER(prog->aux->st_ops_assoc, NULL); in bpf_prog_disassoc_struct_ops()
1474 struct bpf_map *st_ops_assoc; in bpf_prog_get_assoc_struct_ops() local
1476 st_ops_assoc = rcu_dereference_check(aux->st_ops_assoc, bpf_rcu_lock_held()); in bpf_prog_get_assoc_struct_ops()
1477 if (!st_ops_assoc || st_ops_assoc == BPF_PTR_POISON) in bpf_prog_get_assoc_struct_ops()
1480 st_map = (struct bpf_struct_ops_map *)st_ops_assoc; in bpf_prog_get_assoc_struct_ops()