Lines Matching refs:kvalue
56 struct bpf_struct_ops_value kvalue; member
245 struct bpf_struct_ops_value *uvalue, *kvalue; in bpf_struct_ops_map_sys_lookup_elem() local
251 kvalue = &st_map->kvalue; in bpf_struct_ops_map_sys_lookup_elem()
253 state = smp_load_acquire(&kvalue->state); in bpf_struct_ops_map_sys_lookup_elem()
265 refcount_set(&uvalue->refcnt, refcount_read(&kvalue->refcnt)); in bpf_struct_ops_map_sys_lookup_elem()
319 struct bpf_struct_ops_value *uvalue, *kvalue; in bpf_struct_ops_map_update_elem() local
351 kvalue = (struct bpf_struct_ops_value *)&st_map->kvalue; in bpf_struct_ops_map_update_elem()
355 if (kvalue->state != BPF_STRUCT_OPS_STATE_INIT) { in bpf_struct_ops_map_update_elem()
363 kdata = &kvalue->data; in bpf_struct_ops_map_update_elem()
447 refcount_set(&kvalue->refcnt, 1); in bpf_struct_ops_map_update_elem()
458 smp_store_release(&kvalue->state, BPF_STRUCT_OPS_STATE_INUSE); in bpf_struct_ops_map_update_elem()
475 memset(kvalue, 0, map->value_size); in bpf_struct_ops_map_update_elem()
488 prev_state = cmpxchg(&st_map->kvalue.state, in bpf_struct_ops_map_delete_elem()
493 st_map->st_ops->unreg(&st_map->kvalue.data); in bpf_struct_ops_map_delete_elem()
494 if (refcount_dec_and_test(&st_map->kvalue.refcnt)) in bpf_struct_ops_map_delete_elem()
631 struct bpf_struct_ops_value *kvalue; in bpf_struct_ops_get() local
633 kvalue = container_of(kdata, struct bpf_struct_ops_value, data); in bpf_struct_ops_get()
635 return refcount_inc_not_zero(&kvalue->refcnt); in bpf_struct_ops_get()
640 struct bpf_struct_ops_value *kvalue; in bpf_struct_ops_put() local
642 kvalue = container_of(kdata, struct bpf_struct_ops_value, data); in bpf_struct_ops_put()
643 if (refcount_dec_and_test(&kvalue->refcnt)) { in bpf_struct_ops_put()
646 st_map = container_of(kvalue, struct bpf_struct_ops_map, in bpf_struct_ops_put()
647 kvalue); in bpf_struct_ops_put()