Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

kernel/bpf/hashtab.c htab_map_update_elem() -> alloc_htab_elem()

Type Parameter Key Value
PARAM_VALUE 0 htab 4096-ptr_max
PARAM_VALUE 5 percpu 0
PARAM_VALUE 6 onallcpus 0
PARAM_VALUE 7 old_elem 0,4096-ptr_max
BUF_SIZE 1 key (-1)-s32max
BUF_SIZE 1 key (-1)-s32max
BUF_SIZE 2 value (-1)-s32max
BUF_SIZE 2 value (-1)-s32max
DATA_SOURCE 1 key $1
DATA_SOURCE 2 value $2
DATA_SOURCE 4 hash r htab_map_hash
DATA_SOURCE 7 old_elem r lookup_elem_raw
DATA_SOURCE 8 map_flags $3
PREEMPT_ADD <- disables preempt
USER_DATA 1 *key s64min-s64max
USER_DATA 2 *value s64min-s64max
USER_DATA 4 hash 0-u32max[c][u]
USER_DATA 8 map_flags 4-u64max
UNITS 3 key_size unit_byte
USER_PTR 1 key
USER_PTR 2 value
LOCK2 flags
HALF_LOCKED2 rcu_read

kernel/bpf/hashtab.c htab_map_update_elem_in_place() -> alloc_htab_elem()

Type Parameter Key Value
PARAM_VALUE 0 htab 4096-ptr_max
PARAM_VALUE 7 old_elem 0
PARAM_VALUE 8 map_flags 0-16
BUF_SIZE 1 key (-1)-s32max
BUF_SIZE 1 key (-1)-s32max
BUF_SIZE 2 value (-1)-s32max
BUF_SIZE 2 value (-1)-s32max
DATA_SOURCE 1 key $1
DATA_SOURCE 2 value $2
DATA_SOURCE 4 hash r htab_map_hash
DATA_SOURCE 5 percpu $4
DATA_SOURCE 6 onallcpus $5
DATA_SOURCE 8 map_flags $3
PREEMPT_ADD <- disables preempt
USER_DATA 1 *key s64min-s64max
USER_DATA 2 *value s64min-s64max
USER_DATA 4 hash 0-u32max[c][u]
USER_DATA 8 map_flags 4-16
UNITS 3 key_size unit_byte
USER_PTR 1 key
USER_PTR 2 value
LOCK2 flags
HALF_LOCKED2 rcu_read