Defined in 1 files as a prototype:
Defined in 2 files as a function:
Referenced in 12 files:
- drivers/net/ethernet/netronome/nfp/bpf/offload.c
- kernel/bpf/arraymap.c, line 1161
- kernel/bpf/bpf_struct_ops.c
- kernel/bpf/core.c, line 3047
- kernel/bpf/map_in_map.c, line 131
- kernel/bpf/map_iter.c
- kernel/bpf/syscall.c
- kernel/sched/ext/ext.c
- net/core/bpf_sk_storage.c
- net/xdp/xsk.c, line 1526
- net/xdp/xskmap.c, line 37
- tools/lib/bpf/skel_internal.h, line 169
Smatch caller information:
kernel/bpf/arraymap.c prog_array_map_clear_deferred() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &pool->lock |
net/core/bpf_sk_storage.c bpf_sk_storage_clone() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | map | 4096-ptr_max |
| DATA_SOURCE | 0 | map | r bpf_map_inc_not_zero |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &newsk->sk_lock.slock | ||
| HALF_LOCKED2 | &sk->sk_lock.slock | ||
| HALF_LOCKED2 | sk |
net/core/bpf_sk_storage.c bpf_sk_storage_clone() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | map | 4096-ptr_max |
| DATA_SOURCE | 0 | map | r bpf_map_inc_not_zero |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &newsk->sk_lock.slock | ||
| HALF_LOCKED2 | &sk->sk_lock.slock | ||
| HALF_LOCKED2 | sk |
net/core/bpf_sk_storage.c bpf_sk_storage_clone() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | map | 4096-ptr_max |
| DATA_SOURCE | 0 | map | r bpf_map_inc_not_zero |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &newsk->sk_lock.slock | ||
| HALF_LOCKED2 | &sk->sk_lock.slock | ||
| HALF_LOCKED2 | sk |
net/core/bpf_sk_storage.c bpf_sk_storage_clone() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | map | 4096-ptr_max |
| DATA_SOURCE | 0 | map | r bpf_map_inc_not_zero |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &newsk->sk_lock.slock | ||
| HALF_LOCKED2 | &sk->sk_lock.slock | ||
| HALF_LOCKED2 | sk |
net/core/bpf_sk_storage.c bpf_sk_storage_diag_alloc() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | map | 4096-ptr_max |
| PARAM_VALUE | 0 | map->map_type | 0-23,25-u32max |
| BUF_SIZE | 0 | map | s32min-(-2),1-s32max |
| BUF_SIZE | 0 | map | s32min-(-2),1-s32max |
| DATA_SOURCE | 0 | map | r bpf_map_get |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &nlk->nl_cb_mutex | ||
| HALF_LOCKED2 | global &audit_cmd_mutex.lock | ||
| HALF_LOCKED2 | global &hwsim_phys_lock | ||
| HALF_LOCKED2 | global &rtnl_mutex | ||
| HALF_LOCKED2 | global &rx_queue_mutex | ||
| TYPE_LOCK | (struct netlink_sock)->nl_cb_mutex |
net/core/bpf_sk_storage.c bpf_sk_storage_diag_alloc() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | map | 4096-ptr_max |
| PARAM_VALUE | 0 | map->map_type | 24 |
| BUF_SIZE | 0 | map | s32min-(-2),1-s32max |
| BUF_SIZE | 0 | map | s32min-(-2),1-s32max |
| CAPPED_DATA | 0 | map | 1 |
| DATA_SOURCE | 0 | map | r bpf_map_get |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &nlk->nl_cb_mutex | ||
| HALF_LOCKED2 | global &audit_cmd_mutex.lock | ||
| HALF_LOCKED2 | global &hwsim_phys_lock | ||
| HALF_LOCKED2 | global &rtnl_mutex | ||
| HALF_LOCKED2 | global &rx_queue_mutex | ||
| TYPE_LOCK | (struct netlink_sock)->nl_cb_mutex |
net/core/bpf_sk_storage.c bpf_sk_storage_diag_free() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &nlk->nl_cb_mutex |
kernel/bpf/syscall.c bpf_map_put_with_uref() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | map | 4096-ptr_max |
| PARAM_VALUE | 0 | map->ops->map_release | 0,7496606770224660480 |
| BUF_SIZE | 0 | map | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | map | s32min-(-1),1-s32max |
| DATA_SOURCE | 0 | map | $0 |
| NOSPEC | 0 | map->map_type | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | map->btf_key_type_id | 0-u32max |
| USER_DATA | 0 | map->btf_value_type_id | 0-u32max |
| USER_DATA | 0 | map->btf_vmlinux_value_type_id | 0-u32max |
| USER_DATA | 0 | map->map_type | 1-34[c] |
| UNITS | 0 | map | unit_array_size |
| HALF_LOCKED2 | global &sockmap_mutex |
kernel/bpf/syscall.c bpf_prog_bind_map() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | map | 4096-ptr_max |
| BUF_SIZE | 0 | map | s32min-(-2),1-s32max |
| BUF_SIZE | 0 | map | s32min-(-2),1-s32max |
| CAPPED_DATA | 0 | map | 1 |
| DATA_SOURCE | 0 | map | r bpf_map_get |
| NOCHECK_CALL | |||
| LOCK2 | &prog->aux->used_maps_mutex | ||
| TYPE_LOCK | (struct bpf_prog_aux)->used_maps_mutex |
kernel/bpf/syscall.c bpf_prog_bind_map() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | map | 4096-ptr_max |
| BUF_SIZE | 0 | map | s32min-(-2),1-s32max |
| BUF_SIZE | 0 | map | s32min-(-2),1-s32max |
| CAPPED_DATA | 0 | map | 1 |
| DATA_SOURCE | 0 | map | r bpf_map_get |
| NOCHECK_CALL |
kernel/bpf/syscall.c link_update_map() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | map | 4096-ptr_max |
| BUF_SIZE | 0 | map | s32min-(-2),1-s32max |
| BUF_SIZE | 0 | map | s32min-(-2),1-s32max |
| CAPPED_DATA | 0 | map | 1 |
| DATA_SOURCE | 0 | map | r bpf_map_get |
| NOCHECK_CALL |
kernel/bpf/syscall.c link_update_map() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | map | 4096-ptr_max |
| PARAM_VALUE | 0 | map->map_flags | 8192-u32max |
| BUF_SIZE | 0 | map | s32min-(-2),1-s32max |
| BUF_SIZE | 0 | map | s32min-(-2),1-s32max |
| DATA_SOURCE | 0 | map | r bpf_map_get |
| NOCHECK_CALL |
kernel/bpf/syscall.c prog_assoc_struct_ops() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | map | 4096-ptr_max |
| BUF_SIZE | 0 | map | s32min-(-2),1-s32max |
| BUF_SIZE | 0 | map | s32min-(-2),1-s32max |
| CAPPED_DATA | 0 | map | 1 |
| DATA_SOURCE | 0 | map | r bpf_map_get |
| NOCHECK_CALL |
net/xdp/xskmap.c xsk_map_node_free() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &xs->map_list_lock | ||
| HALF_LOCKED2 | bh |
kernel/bpf/map_iter.c bpf_map_seq_next() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | map | 1-ptr_max |
| DATA_SOURCE | 0 | map | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &seq->lock | ||
| TYPE_LOCK | (struct seq_file)->lock |
kernel/bpf/map_iter.c bpf_map_seq_stop() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | map | 1-u64max |
| DATA_SOURCE | 0 | map | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &seq->lock | ||
| TYPE_LOCK | (struct seq_file)->lock |
net/xdp/xsk.c xsk_delete_from_maps() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &inode->i_rwsem |
kernel/bpf/map_in_map.c bpf_map_fd_put_ptr() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| BUF_SIZE | 0 | map | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | map | s32min-(-1),1-s32max |
| DATA_SOURCE | 0 | map | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | rcu_read |
kernel/bpf/bpf_struct_ops.c bpf_prog_disassoc_struct_ops() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | map | 1-16045481047391005598,16045481047391005600-u64max |
| NOCHECK_CALL | |||
| LOCK2 | _T->lock |
kernel/bpf/bpf_struct_ops.c bpf_struct_ops_link_create() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | map | 4096-ptr_max |
| PARAM_VALUE | 0 | map->map_flags | 8192-u32max |
| BUF_SIZE | 0 | map | s32min-(-2),1-s32max |
| BUF_SIZE | 0 | map | s32min-(-2),1-s32max |
| DATA_SOURCE | 0 | map | r bpf_map_get |
| NOCHECK_CALL |
kernel/bpf/bpf_struct_ops.c bpf_struct_ops_map_delete_elem() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | map | 4096-ptr_max |
| PARAM_VALUE | 0 | map->ops | 4096-ptr_max |
| PARAM_VALUE | 0 | map->ops->map_delete_batch | 0,5247200330534285312 |
| PARAM_VALUE | 0 | map->st_ops_desc | 4096-ptr_max |
| PARAM_VALUE | 0 | map->st_ops_desc->st_ops | 4096-ptr_max |
| BUF_SIZE | 0 | map | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | map | s32min-(-1),1-s32max |
| CAPPED_DATA | 0 | map | 1 |
| DATA_SOURCE | 0 | map | $0 |
| NOCHECK_CALL | |||
| HALF_LOCKED2 | rcu_read |
kernel/bpf/bpf_struct_ops.c bpf_struct_ops_map_link_dealloc() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | map | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
kernel/bpf/bpf_struct_ops.c bpf_struct_ops_map_link_detach() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | map | 4096-ptr_max |
| NOCHECK_CALL | |||
| LOCK2 | global &update_mutex |
kernel/bpf/bpf_struct_ops.c bpf_struct_ops_map_link_update() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | map | 1-u64max |
| CAPPED_DATA | 0 | map | 1 |
| NOCHECK_CALL | |||
| LOCK2 | global &update_mutex |
kernel/bpf/bpf_struct_ops.c bpf_struct_ops_put() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | map | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | global &pernet_ops_rwsem | ||
| HALF_LOCKED2 | rcu_read | ||
| HALF_LOCKED2 | sk |
kernel/bpf/core.c __bpf_free_used_maps() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | map | 4096-ptr_max |
| PARAM_VALUE | 0 | map->ops | 4096-ptr_max |
| PARAM_VALUE | 0 | map->ops->map_poke_untrack | 0,693685967389519872 |
| NOCHECK_CALL |
drivers/net/ethernet/netronome/nfp/bpf/offload.c nfp_map_ptr_record() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | map | 4096-ptr_max |
| DATA_SOURCE | 0 | map | $2 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &prog->aux->used_maps_mutex | ||
| LOCK2 | global &bpf_devs_lock | ||
| TYPE_LOCK | (struct bpf_prog_aux)->used_maps_mutex |
drivers/net/ethernet/netronome/nfp/bpf/offload.c nfp_map_ptrs_forget() -> bpf_map_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | global &bpf_devs_lock | ||
| HALF_LOCKED2 | &prog->aux->used_maps_mutex |