Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

kernel/bpf/arraymap.c prog_fd_array_get_ptr() -> bpf_prog_map_compatible()

Type Parameter Key Value
PARAM_VALUE 0 map 4096-ptr_max
PARAM_VALUE 0 map->map_type 3-4,8,12-13
PARAM_VALUE 0 map->ops 4096-8176211074560897023,8176211074560897025-ptr_max
PARAM_VALUE 0 map->ops->map_update_batch 0,7911141981172039680
PARAM_VALUE 1 fp 4096-ptr_max
PARAM_VALUE 1 fp->type 0-27,29-u32max
BUF_SIZE 0 map s32min-(-2),1-s32max
BUF_SIZE 0 map s32min-(-2),1-s32max
BUF_SIZE 1 fp s32min-(-2),1-s32max
BUF_SIZE 1 fp s32min-(-2),1-s32max
DATA_SOURCE 0 map $0
DATA_SOURCE 1 fp r bpf_prog_get
FUZZY_MAX 0 map->map_type 12

kernel/bpf/devmap.c __dev_map_alloc_node() -> bpf_prog_map_compatible()

Type Parameter Key Value
PARAM_VALUE 0 map 4096-ptr_max
PARAM_VALUE 0 map->objcg 0,4096-ptr_max
PARAM_VALUE 1 fp 4096-ptr_max
PARAM_VALUE 1 fp->expected_attach_type 33
BUF_SIZE 1 fp s32min-(-2),1-s32max
BUF_SIZE 1 fp s32min-(-2),1-s32max
DATA_SOURCE 1 fp r bpf_prog_get_type_dev
PREEMPT_ADD
HALF_LOCKED2 &dtab->index_lock
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

kernel/bpf/cpumap.c __cpu_map_load_bpf_program() -> bpf_prog_map_compatible()

Type Parameter Key Value
PARAM_VALUE 0 map 4096-ptr_max
PARAM_VALUE 0 map->objcg 0,4096-ptr_max
PARAM_VALUE 0 map->objcg->memcg 4096-ptr_max
PARAM_VALUE 0 map->objcg->memcg->css.refcnt.percpu_count_ptr 1-u64max
PARAM_VALUE 0 map->ops 4096-ptr_max
PARAM_VALUE 0 map->ops->map_update_batch 0,7911141981172039680
PARAM_VALUE 1 fp 4096-ptr_max
PARAM_VALUE 1 fp->expected_attach_type 35
BUF_SIZE 1 fp s32min-(-2),1-s32max
BUF_SIZE 1 fp s32min-(-2),1-s32max
DATA_SOURCE 0 map $1
DATA_SOURCE 1 fp r bpf_prog_get_type