Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

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

Type Parameter Key Value
PARAM_VALUE 0 htab 4096-ptr_max
DATA_SOURCE 0 htab $0
PREEMPT_ADD
LOCK2 flags
HALF_LOCKED2 rcu_read

kernel/bpf/hashtab.c free_htab_elem() -> htab_is_prealloc()

Type Parameter Key Value
PARAM_VALUE 0 htab 4096-ptr_max
DATA_SOURCE 0 htab $0
PREEMPT_ADD
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

kernel/bpf/hashtab.c htab_map_check_btf() -> htab_is_prealloc()

Type Parameter Key Value
PARAM_VALUE 0 htab 4096-ptr_max

kernel/bpf/hashtab.c htab_map_free() -> htab_is_prealloc()

Type Parameter Key Value
PARAM_VALUE 0 htab 4096-ptr_max

kernel/bpf/hashtab.c htab_map_free_internal_structs() -> htab_is_prealloc()

Type Parameter Key Value
PARAM_VALUE 0 htab 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &sockmap_mutex

kernel/bpf/hashtab.c htab_map_mem_usage() -> htab_is_prealloc()

Type Parameter Key Value
PARAM_VALUE 0 htab 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &m->lock
TYPE_LOCK (struct seq_file)->lock

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

Type Parameter Key Value
PARAM_VALUE 0 htab 4096-ptr_max
CAPPED_DATA 0 htab->map.record->cnt 1
PREEMPT_ADD <- disables preempt
LOCK2 flags
HALF_LOCKED2 rcu_read

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

Type Parameter Key Value
PARAM_VALUE 0 htab 4096-ptr_max
CAPPED_DATA 0 htab->map.record->cnt 1
PREEMPT_ADD <- disables preempt
LOCK2 flags
HALF_LOCKED2 rcu_read