Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

kernel/bpf/states.c func_states_equal() -> regsafe()

Type Parameter Key Value
PARAM_VALUE 0 env 4096-ptr_max
PARAM_VALUE 0 env->cur_hist_ent 0
PARAM_VALUE 0 env->cur_state 4096-ptr_max
PARAM_VALUE 0 env->cur_state->curframe 0-4294967294
PARAM_VALUE 0 env->cur_state->insn_idx 0-4294967294
PARAM_VALUE 0 env->insn_aux_data 4096-ptr_max
PARAM_VALUE 0 env->insn_idx 0-4294967294
PARAM_VALUE 0 env->insn_processed 0-1000000
PARAM_VALUE 0 env->liveness 4096-ptr_max
PARAM_VALUE 0 env->liveness->live_stack_query.curframe 0-4294967294
PARAM_VALUE 0 env->liveness->live_stack_query.insn_idx 0-4294967295
PARAM_VALUE 0 env->prev_linfo 0,4096-ptr_max
PARAM_VALUE 0 env->prog 4096-ptr_max
PARAM_VALUE 0 env->prog->aux 4096-ptr_max
PARAM_VALUE 0 env->scratched_regs 0,u32max
PARAM_VALUE 0 env->scratched_stack_slots 0,u64max
PARAM_VALUE 0 env->subprog_info 4096-ptr_max
PARAM_VALUE 0 *env->liveness->live_stack_query->callsites 0-4294967295
PARAM_VALUE 1 rold 4096-ptr_max
PARAM_VALUE 2 rcur 4096-ptr_max
PARAM_VALUE 3 idmap 4096-ptr_max
PARAM_VALUE 4 exact 0-2
BUF_SIZE 0 env->cur_state 232
CAPPED_DATA 0 env->insn_idx 1
CAPPED_DATA 0 env->prev_insn_idx 1
DATA_SOURCE 0 env $0
DATA_SOURCE 4 exact $4
FUZZY_MAX 0 env->insn_processed 1000000
FUZZY_MAX 4 exact 2
BIT_INFO 0 env->prev_insn_idx 0x0,0x7fffffff
HARD_MAX 0 env->insn_processed 1000000
HARD_MAX 4 exact 2

kernel/bpf/states.c stack_arg_safe() -> regsafe()

Type Parameter Key Value
PARAM_VALUE 0 env 4096-ptr_max
PARAM_VALUE 0 env->cur_hist_ent 0
PARAM_VALUE 0 env->cur_state 4096-ptr_max
PARAM_VALUE 0 env->cur_state->curframe 0-4294967294
PARAM_VALUE 0 env->cur_state->insn_idx 0-4294967294
PARAM_VALUE 0 env->insn_aux_data 4096-ptr_max
PARAM_VALUE 0 env->insn_idx 0-4294967294
PARAM_VALUE 0 env->insn_processed 0-1000000
PARAM_VALUE 0 env->liveness 4096-ptr_max
PARAM_VALUE 0 env->liveness->live_stack_query.curframe 0-4294967294
PARAM_VALUE 0 env->liveness->live_stack_query.insn_idx 0-4294967294
PARAM_VALUE 0 env->prev_linfo 0,4096-ptr_max
PARAM_VALUE 0 env->prog 4096-ptr_max
PARAM_VALUE 0 env->prog->aux 4096-ptr_max
PARAM_VALUE 0 env->scratched_regs 0,u32max
PARAM_VALUE 0 env->scratched_stack_slots 0,u64max
PARAM_VALUE 0 env->subprog_info 4096-ptr_max
PARAM_VALUE 0 *env->bt.reg_masks 0-4294967295
PARAM_VALUE 0 *env->liveness->live_stack_query->callsites 0-4294967295
PARAM_VALUE 1 rold 4096-ptr_max
PARAM_VALUE 1 rold->btf 0
PARAM_VALUE 1 rold->btf_id 0
PARAM_VALUE 1 rold->delta 0
PARAM_VALUE 1 rold->dynptr.first_slot 0
PARAM_VALUE 1 rold->dynptr.type 0
PARAM_VALUE 1 rold->frameno 0
PARAM_VALUE 1 rold->id 0
PARAM_VALUE 1 rold->irq.kfunc_class 0
PARAM_VALUE 1 rold->iter.btf 0
PARAM_VALUE 1 rold->iter.btf_id 0
PARAM_VALUE 1 rold->iter.depth 0
PARAM_VALUE 1 rold->iter.state 0
PARAM_VALUE 1 rold->map_ptr 0
PARAM_VALUE 1 rold->map_uid 0
PARAM_VALUE 1 rold->mem_size 0
PARAM_VALUE 1 rold->parent_id 0
PARAM_VALUE 1 rold->precise 0
PARAM_VALUE 1 rold->r32.base 0
PARAM_VALUE 1 rold->r32.size 0
PARAM_VALUE 1 rold->r64.base 0
PARAM_VALUE 1 rold->r64.size 0
PARAM_VALUE 1 rold->range 0
PARAM_VALUE 1 rold->raw.raw1 0
PARAM_VALUE 1 rold->raw.raw2 0
PARAM_VALUE 1 rold->subprogno 0
PARAM_VALUE 1 rold->type 0
PARAM_VALUE 1 rold->var_off.mask 0
PARAM_VALUE 1 rold->var_off.value 0
PARAM_VALUE 2 rcur 4096-ptr_max
PARAM_VALUE 2 rcur->btf 0
PARAM_VALUE 2 rcur->btf_id 0
PARAM_VALUE 2 rcur->delta 0
PARAM_VALUE 2 rcur->dynptr.first_slot 0
PARAM_VALUE 2 rcur->dynptr.type 0
PARAM_VALUE 2 rcur->frameno 0
PARAM_VALUE 2 rcur->id 0
PARAM_VALUE 2 rcur->irq.kfunc_class 0
PARAM_VALUE 2 rcur->iter.btf 0
PARAM_VALUE 2 rcur->iter.btf_id 0
PARAM_VALUE 2 rcur->iter.depth 0
PARAM_VALUE 2 rcur->iter.state 0
PARAM_VALUE 2 rcur->map_ptr 0
PARAM_VALUE 2 rcur->map_uid 0
PARAM_VALUE 2 rcur->mem_size 0
PARAM_VALUE 2 rcur->parent_id 0
PARAM_VALUE 2 rcur->precise 0
PARAM_VALUE 2 rcur->r32.base 0
PARAM_VALUE 2 rcur->r32.size 0
PARAM_VALUE 2 rcur->r64.base 0
PARAM_VALUE 2 rcur->r64.size 0
PARAM_VALUE 2 rcur->range 0
PARAM_VALUE 2 rcur->raw.raw1 0
PARAM_VALUE 2 rcur->raw.raw2 0
PARAM_VALUE 2 rcur->subprogno 0
PARAM_VALUE 2 rcur->type 0
PARAM_VALUE 2 rcur->var_off.mask 0
PARAM_VALUE 2 rcur->var_off.value 0
PARAM_VALUE 3 idmap 4096-ptr_max
PARAM_VALUE 4 exact 0-2
BUF_SIZE 0 env->cur_state 232
BUF_SIZE 1 rold (-1),80
BUF_SIZE 1 rold (-1),80
BUF_SIZE 2 rcur (-1),80
BUF_SIZE 2 rcur (-1),80
CAPPED_DATA 0 env->insn_idx 1
CAPPED_DATA 0 env->prev_insn_idx 1
DATA_SOURCE 0 env $0
DATA_SOURCE 3 idmap $3
DATA_SOURCE 4 exact $4
FUZZY_MAX 0 env->insn_processed 1000000
FUZZY_MAX 4 exact 2
BIT_INFO 0 env->prev_insn_idx 0x0,0x7fffffff
HARD_MAX 0 env->insn_processed 1000000
HARD_MAX 4 exact 2

kernel/bpf/states.c stacksafe() -> regsafe()

Type Parameter Key Value
PARAM_VALUE 0 env 4096-ptr_max
PARAM_VALUE 0 env->cur_hist_ent 0
PARAM_VALUE 0 env->cur_state 4096-ptr_max
PARAM_VALUE 0 env->cur_state->curframe 0-4294967294
PARAM_VALUE 0 env->cur_state->insn_idx 0-4294967294
PARAM_VALUE 0 env->insn_aux_data 4096-ptr_max
PARAM_VALUE 0 env->insn_idx 0-4294967294
PARAM_VALUE 0 env->insn_processed 0-1000000
PARAM_VALUE 0 env->liveness 4096-ptr_max
PARAM_VALUE 0 env->liveness->live_stack_query.curframe 0-4294967294
PARAM_VALUE 0 env->liveness->live_stack_query.insn_idx 0-4294967294
PARAM_VALUE 0 env->prev_linfo 0,4096-ptr_max
PARAM_VALUE 0 env->prog 4096-ptr_max
PARAM_VALUE 0 env->prog->aux 4096-ptr_max
PARAM_VALUE 0 env->scratched_regs 0,u32max
PARAM_VALUE 0 env->scratched_stack_slots 0,u64max
PARAM_VALUE 0 env->subprog_info 4096-ptr_max
PARAM_VALUE 0 *env->bt.reg_masks 0-4294967295
PARAM_VALUE 0 *env->liveness->live_stack_query->callsites 0-4294967295
PARAM_VALUE 1 rold 4096-ptr_max
PARAM_VALUE 1 rold->type 0-1
PARAM_VALUE 2 rcur 4096-ptr_max
PARAM_VALUE 2 rcur->type 0-1
PARAM_VALUE 3 idmap 4096-ptr_max
PARAM_VALUE 4 exact 0-2
BUF_SIZE 0 env->cur_state 232
BUF_SIZE 1 rold 80
BUF_SIZE 2 rcur 80
CAPPED_DATA 0 env->insn_idx 1
CAPPED_DATA 0 env->prev_insn_idx 1
DATA_SOURCE 0 env $0
DATA_SOURCE 1 rold r scalar_reg_for_stack
DATA_SOURCE 2 rcur r scalar_reg_for_stack
DATA_SOURCE 3 idmap $3
DATA_SOURCE 4 exact $4
FUZZY_MAX 0 env->insn_processed 1000000
FUZZY_MAX 4 exact 2
BIT_INFO 0 env->prev_insn_idx 0x0,0x7fffffff
HARD_MAX 0 env->insn_processed 1000000
HARD_MAX 4 exact 2

kernel/bpf/states.c stacksafe() -> regsafe()

Type Parameter Key Value
PARAM_VALUE 0 env 4096-ptr_max
PARAM_VALUE 0 env->cur_hist_ent 0
PARAM_VALUE 0 env->cur_state 4096-ptr_max
PARAM_VALUE 0 env->cur_state->curframe 0-4294967294
PARAM_VALUE 0 env->cur_state->insn_idx 0-4294967294
PARAM_VALUE 0 env->insn_aux_data 4096-ptr_max
PARAM_VALUE 0 env->insn_idx 0-4294967294
PARAM_VALUE 0 env->insn_processed 0-1000000
PARAM_VALUE 0 env->liveness 4096-ptr_max
PARAM_VALUE 0 env->liveness->live_stack_query.curframe 0-4294967294
PARAM_VALUE 0 env->liveness->live_stack_query.insn_idx 0-4294967294
PARAM_VALUE 0 env->prev_linfo 0,4096-ptr_max
PARAM_VALUE 0 env->prog 4096-ptr_max
PARAM_VALUE 0 env->prog->aux 4096-ptr_max
PARAM_VALUE 0 env->scratched_regs 0,u32max
PARAM_VALUE 0 env->scratched_stack_slots 0,u64max
PARAM_VALUE 0 env->subprog_info 4096-ptr_max
PARAM_VALUE 0 *env->bt.reg_masks 0-4294967295
PARAM_VALUE 0 *env->liveness->live_stack_query->callsites 0-4294967295
PARAM_VALUE 3 idmap 4096-ptr_max
PARAM_VALUE 4 exact 0-2
BUF_SIZE 0 env->cur_state 232
CAPPED_DATA 0 env->insn_idx 1
CAPPED_DATA 0 env->prev_insn_idx 1
DATA_SOURCE 0 env $0
DATA_SOURCE 3 idmap $3
DATA_SOURCE 4 exact $4
FUZZY_MAX 0 env->insn_processed 1000000
FUZZY_MAX 4 exact 2
BIT_INFO 0 env->prev_insn_idx 0x0,0x7fffffff
HARD_MAX 0 env->insn_processed 1000000
HARD_MAX 4 exact 2