Defined in 1 files as a function:
Referenced in 1 files:
Smatch caller information:
kernel/bpf/verifier.c __check_func_arg_reg_off() -> __check_ptr_off_reg()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | env | 4096-ptr_max |
| PARAM_VALUE | 0 | env->cur_state | 4096-ptr_max |
| PARAM_VALUE | 0 | env->insn_aux_data->btf_var.reg_type | 0,16,529,4112 |
| PARAM_VALUE | 0 | env->ops->gen_ld_abs | 0,4096-ptr_max |
| PARAM_VALUE | 0 | env->prog | 4096-ptr_max |
| PARAM_VALUE | 1 | reg | 4096-ptr_max |
| DATA_SOURCE | 0 | env | $0 |
| DATA_SOURCE | 1 | reg | $1 |
| DATA_SOURCE | 2 | argno | $2 |
| DATA_SOURCE | 3 | fixed_off_ok | $4 |
| NO_OVERFLOW_SIMPLE | 0 | env->cur_state->jmp_history_cnt |
kernel/bpf/verifier.c __check_func_arg_reg_off() -> __check_ptr_off_reg()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | env | 4096-ptr_max |
| PARAM_VALUE | 0 | env->cur_state | 4096-ptr_max |
| PARAM_VALUE | 0 | env->insn_aux_data->btf_var.reg_type | 0,16,529,4112 |
| PARAM_VALUE | 0 | env->ops->gen_ld_abs | 0,4096-ptr_max |
| PARAM_VALUE | 0 | env->prog | 4096-ptr_max |
| PARAM_VALUE | 1 | reg | 4096-ptr_max |
| PARAM_VALUE | 3 | fixed_off_ok | 0 |
| DATA_SOURCE | 0 | env | $0 |
| DATA_SOURCE | 1 | reg | $1 |
| DATA_SOURCE | 2 | argno | $2 |
| NO_OVERFLOW_SIMPLE | 0 | env->cur_state->jmp_history_cnt |
kernel/bpf/verifier.c check_ctx_access() -> __check_ptr_off_reg()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | env | 4096-ptr_max |
| PARAM_VALUE | 0 | env->cur_state | 4096-ptr_max |
| PARAM_VALUE | 0 | env->insn_aux_data->btf_var.reg_type | 0,16,529,4112 |
| PARAM_VALUE | 0 | env->ops | 4096-ptr_max |
| PARAM_VALUE | 0 | env->ops->gen_ld_abs | 0,5704186734949433344 |
| PARAM_VALUE | 0 | env->prog | 4096-ptr_max |
| PARAM_VALUE | 0 | *env->tmp_arg_name | 0-255 |
| PARAM_VALUE | 0 | *env->tmp_str_buf | 0-255 |
| PARAM_VALUE | 1 | reg | 4096-ptr_max |
| PARAM_VALUE | 1 | reg->type | 2 |
| BUF_SIZE | 1 | reg | (-1),880 |
| BUF_SIZE | 1 | reg | (-1),880 |
| DATA_SOURCE | 0 | env | $0 |
| DATA_SOURCE | 1 | reg | $2 |
| DATA_SOURCE | 2 | argno | $3 |
| STR_LEN | 0 | env | (-1),3,11 |
| STR_LEN | 0 | env | (-1),3,11 |
| NO_OVERFLOW_SIMPLE | 0 | env->cur_state->jmp_history_cnt |
kernel/bpf/verifier.c check_ptr_off_reg() -> __check_ptr_off_reg()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | env | 4096-ptr_max |
| PARAM_VALUE | 0 | env->cur_state | 4096-ptr_max |
| PARAM_VALUE | 0 | env->cur_state->active_irq_id | 0 |
| PARAM_VALUE | 0 | env->cur_state->active_locks | 0 |
| PARAM_VALUE | 0 | env->cur_state->active_preempt_locks | 0 |
| PARAM_VALUE | 0 | env->cur_state->active_rcu_locks | 0 |
| PARAM_VALUE | 0 | env->ops | 4096-ptr_max |
| PARAM_VALUE | 0 | env->ops->gen_ld_abs | 5704186734949433344 |
| PARAM_VALUE | 0 | env->prog | 4096-ptr_max |
| PARAM_VALUE | 1 | reg | 4096-ptr_max |
| PARAM_VALUE | 1 | reg->type | 2 |
| PARAM_VALUE | 3 | fixed_off_ok | 0 |
| BUF_SIZE | 1 | reg | 400 |
| BUF_SIZE | 1 | reg | 400 |
| DATA_SOURCE | 0 | env | $0 |
| DATA_SOURCE | 1 | reg | $1 |
kernel/bpf/verifier.c check_reg_type() -> __check_ptr_off_reg()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | env | 4096-ptr_max |
| PARAM_VALUE | 0 | env->cur_state | 4096-ptr_max |
| PARAM_VALUE | 0 | env->ops->gen_ld_abs | 0,5704186734949433344 |
| PARAM_VALUE | 0 | env->ops->get_func_proto | 1-u64max |
| PARAM_VALUE | 0 | env->prog | 4096-ptr_max |
| PARAM_VALUE | 1 | reg | 4096-ptr_max |
| PARAM_VALUE | 1 | reg->type | 16,272,1048592,1048848,2097168,2097424 |
| PARAM_VALUE | 3 | fixed_off_ok | 1 |
| DATA_SOURCE | 0 | env | $0 |
| DATA_SOURCE | 1 | reg | $1 |
| DATA_SOURCE | 2 | argno | $2 |
| NO_OVERFLOW_SIMPLE | 0 | env->cur_state->jmp_history_cnt |
kernel/bpf/verifier.c check_return_code() -> __check_ptr_off_reg()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | env | 4096-ptr_max |
| PARAM_VALUE | 0 | env->cur_state | 4096-ptr_max |
| PARAM_VALUE | 0 | env->cur_state->acquired_refs | 1-u32max |
| PARAM_VALUE | 0 | env->cur_state->frame | 4096-ptr_max |
| PARAM_VALUE | 0 | env->prog | 4096-ptr_max |
| PARAM_VALUE | 0 | env->prog->aux | 4096-ptr_max |
| PARAM_VALUE | 0 | env->prog->aux->attach_func_proto | 4096-ptr_max |
| PARAM_VALUE | 0 | *env->tmp_str_buf | 0-255 |
| PARAM_VALUE | 1 | reg | 4096-ptr_max |
| PARAM_VALUE | 1 | reg->btf | 1-u64max |
| PARAM_VALUE | 3 | fixed_off_ok | 0 |
| CAPPED_DATA | 0 | env->cur_state->acquired_refs | 1 |
| CAPPED_DATA | 1 | reg->btf->start_id | 1 |
| CAPPED_DATA | 1 | reg->btf_id | 1 |
| CAPPED_DATA | 1 | reg->id | 1 |
| DATA_SOURCE | 0 | env | $0 |
| DATA_SOURCE | 1 | reg | r reg_state |
| STR_LEN | 0 | env | 2 |
| STR_LEN | 0 | env | 2 |
| PARAM_COMPARE | 1 | reg->btf->nr_types | > $1->btf->start_id |
| PARAM_COMPARE | 1 | reg->btf->nr_types | > $1->btf_id |
| PARAM_COMPARE | 1 | reg->btf->start_id | <= $1->btf_id |
kernel/bpf/verifier.c map_kptr_match_type() -> __check_ptr_off_reg()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | env | 4096-ptr_max |
| PARAM_VALUE | 0 | env->cur_state | 4096-ptr_max |
| PARAM_VALUE | 0 | env->insn_aux_data->btf_var.reg_type | 0,16,529,4112 |
| PARAM_VALUE | 0 | env->ops->gen_ld_abs | 0,4096-ptr_max |
| PARAM_VALUE | 0 | *env->tmp_arg_name | 0-255 |
| PARAM_VALUE | 1 | reg | 4096-ptr_max |
| PARAM_VALUE | 1 | reg->btf | 4096-ptr_max |
| PARAM_VALUE | 1 | reg->btf->kernel_btf | 0-1 |
| PARAM_VALUE | 3 | fixed_off_ok | 1 |
| CAPPED_DATA | 1 | reg->btf->start_id | 1 |
| DATA_SOURCE | 0 | env | $0 |
| DATA_SOURCE | 1 | reg | $2 |
| STR_LEN | 0 | env | (-1),11 |
| STR_LEN | 0 | env | (-1),11 |
| PARAM_COMPARE | 1 | reg->btf->start_id | <= $1->btf_id |
| NO_OVERFLOW_SIMPLE | 0 | env->cur_state->jmp_history_cnt |