Lines Matching refs:ref_obj_id

192 static int release_reference(struct bpf_verifier_env *env, int ref_obj_id);
261 int ref_obj_id; member
837 state->stack[spi].spilled_ptr.ref_obj_id = id; in mark_stack_slots_dynptr()
838 state->stack[spi - 1].spilled_ptr.ref_obj_id = id; in mark_stack_slots_dynptr()
863 WARN_ON_ONCE(release_reference(env, state->stack[spi].spilled_ptr.ref_obj_id)); in unmark_stack_slots_dynptr()
1083 if (reg->ref_obj_id) in print_verifier_state()
1084 verbose_a("ref_obj_id=%d", reg->ref_obj_id); in print_verifier_state()
1564 reg->ref_obj_id = 0; in __mark_reg_known()
1928 reg->ref_obj_id = 0; in __mark_reg_unknown()
4578 if (reg->ref_obj_id) in is_trusted_reg()
5093 !reg->ref_obj_id) { in check_ptr_to_btf_access()
6688 return reg->ref_obj_id; in dynptr_ref_obj_id()
6692 return state->stack[spi].spilled_ptr.ref_obj_id; in dynptr_ref_obj_id()
6766 if (spi < 0 || !state->stack[spi].spilled_ptr.ref_obj_id) { in check_func_arg()
6774 } else if (!reg->ref_obj_id && !register_is_null(reg)) { in check_func_arg()
6786 if (reg->ref_obj_id) { in check_func_arg()
6787 if (meta->ref_obj_id) { in check_func_arg()
6789 regno, reg->ref_obj_id, in check_func_arg()
6790 meta->ref_obj_id); in check_func_arg()
6793 meta->ref_obj_id = reg->ref_obj_id; in check_func_arg()
7400 int ref_obj_id) in release_reference() argument
7406 err = release_reference_state(cur_func(env), ref_obj_id); in release_reference()
7411 if (reg->ref_obj_id == ref_obj_id) { in release_reference()
8261 } else if (meta.ref_obj_id) { in check_helper_call()
8262 err = release_reference(env, meta.ref_obj_id); in check_helper_call()
8336 int id, ref_obj_id; in check_helper_call() local
8343 if (meta.ref_obj_id) { in check_helper_call()
8354 ref_obj_id = dynptr_ref_obj_id(env, reg); in check_helper_call()
8355 if (ref_obj_id < 0) { in check_helper_call()
8357 return ref_obj_id; in check_helper_call()
8361 meta.ref_obj_id = ref_obj_id; in check_helper_call()
8522 regs[BPF_REG_0].ref_obj_id = meta.ref_obj_id; in check_helper_call()
8531 regs[BPF_REG_0].ref_obj_id = id; in check_helper_call()
8606 u32 ref_obj_id; member
9052 (is_kfunc_release(meta) && reg->ref_obj_id) || in process_kf_arg_ptr_to_btf_id()
9121 static int ref_convert_owning_non_owning(struct bpf_verifier_env *env, u32 ref_obj_id) in ref_convert_owning_non_owning() argument
9129 if (!ref_obj_id) { in ref_convert_owning_non_owning()
9136 if (state->refs[i].id != ref_obj_id) in ref_convert_owning_non_owning()
9143 if (reg->ref_obj_id == ref_obj_id) { in ref_convert_owning_non_owning()
9144 reg->ref_obj_id = 0; in ref_convert_owning_non_owning()
9547 if (reg->ref_obj_id) { in check_kfunc_args()
9548 if (is_kfunc_release(meta) && meta->ref_obj_id) { in check_kfunc_args()
9550 regno, reg->ref_obj_id, in check_kfunc_args()
9551 meta->ref_obj_id); in check_kfunc_args()
9554 meta->ref_obj_id = reg->ref_obj_id; in check_kfunc_args()
9604 if (is_kfunc_release(meta) && reg->ref_obj_id) in check_kfunc_args()
9629 if (!reg->ref_obj_id) { in check_kfunc_args()
9665 if (reg->type == (PTR_TO_BTF_ID | MEM_ALLOC) && !reg->ref_obj_id) { in check_kfunc_args()
9679 if (reg->type == (PTR_TO_BTF_ID | MEM_ALLOC) && !reg->ref_obj_id) { in check_kfunc_args()
9692 if (!reg->ref_obj_id) { in check_kfunc_args()
9702 if (!type_is_non_owning_ref(reg->type) || reg->ref_obj_id) { in check_kfunc_args()
9715 if (!reg->ref_obj_id) { in check_kfunc_args()
9870 err = release_reference(env, regs[meta.release_regno].ref_obj_id); in check_kfunc_call()
9881 release_ref_obj_id = regs[BPF_REG_2].ref_obj_id; in check_kfunc_call()
10019 if (meta.ref_obj_id) in check_kfunc_call()
10020 regs[BPF_REG_0].ref_obj_id = meta.ref_obj_id; in check_kfunc_call()
10041 regs[BPF_REG_0].ref_obj_id = id; in check_kfunc_call()
12245 reg->ref_obj_id = 0; in mark_ptr_or_null_reg()
12272 u32 ref_obj_id = regs[regno].ref_obj_id; in mark_ptr_or_null_regs() local
12275 if (ref_obj_id && ref_obj_id == id && is_null) in mark_ptr_or_null_regs()
13827 check_ids(rold->ref_obj_id, rcur->ref_obj_id, idmap); in regs_exact()
13987 !check_ids(old_reg->ref_obj_id, cur_reg->ref_obj_id, idmap)) in stacksafe()