Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

net/core/sock_map.c sock_hash_delete_elem() -> sock_hash_free_elem()

Type Parameter Key Value
PARAM_VALUE 0 htab 4096-ptr_max
PARAM_VALUE 1 elem 4096-ptr_max
PARAM_VALUE 1 elem->node->next->pprev 1-u64max
PARAM_VALUE 1 elem->sk 4096-ptr_max
PARAM_VALUE 1 elem->sk->sk_callback_lock.dep_map->name 0-255
PARAM_VALUE 1 elem->sk->sk_user_data 0
CAPPED_DATA 1 elem 1
CAPPED_DATA 1 elem->hash 1
DATA_SOURCE 1 elem r sock_hash_lookup_elem_raw
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &bucket->lock
LOCK2 bh
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct bpf_shtab_bucket)->lock

net/core/sock_map.c sock_hash_delete_from_link() -> sock_hash_free_elem()

Type Parameter Key Value
PARAM_VALUE 0 htab 4096-ptr_max
PARAM_VALUE 1 elem 4096-ptr_max
PARAM_VALUE 1 elem->node->next->pprev 1-u64max
PARAM_VALUE 1 elem->sk 4096-ptr_max
PARAM_VALUE 1 elem->sk->sk_callback_lock.dep_map->name 0-255
PARAM_VALUE 1 elem->sk->sk_user_data 0
CAPPED_DATA 1 elem 1
CAPPED_DATA 1 elem->hash 1
DATA_SOURCE 1 elem $2
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &bucket->lock
LOCK2 bh
LOCK2 rcu_read
HALF_LOCKED2 &sk->__sk_common.skc_net.net->ipv4.ra_mutex
HALF_LOCKED2 &sk->__sk_common.skc_net.net->mctp.keys_lock
HALF_LOCKED2 &sk->sk_callback_lock
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 sk
TYPE_LOCK (struct bpf_shtab_bucket)->lock

net/core/sock_map.c sock_hash_free() -> sock_hash_free_elem()

Type Parameter Key Value
PARAM_VALUE 0 htab 4096-ptr_max
PARAM_VALUE 0 htab->buckets_num 1-u32max
PARAM_VALUE 1 elem 4096-ptr_max
PARAM_VALUE 1 elem->node->next->pprev 1-u64max
PARAM_VALUE 1 elem->sk 4096-ptr_max
PARAM_VALUE 1 elem->sk->sk_lock.dep_map->name 0-255
PARAM_VALUE 1 elem->sk->sk_lock.owned 0
PARAM_VALUE 1 elem->sk->sk_lock.slock.rlock.dep_map->name 0-255
PARAM_VALUE 1 elem->sk->sk_lock.wq.head.prev->next 4096-ptr_max
PARAM_VALUE 1 elem->sk->sk_lock.wq.head.prev->next->next 4096-ptr_max
PARAM_VALUE 1 *elem->sk->sk_backlog.head->dev->name 0-255
CAPPED_DATA 1 elem 1
CAPPED_DATA 1 elem->sk 1
NOCHECK_CALL

net/core/sock_map.c sock_hash_update_common() -> sock_hash_free_elem()

Type Parameter Key Value
PARAM_VALUE 0 htab 4096-ptr_max
PARAM_VALUE 0 htab->map.objcg 0,4096-ptr_max
PARAM_VALUE 0 htab->map.objcg->memcg 4096-ptr_max
PARAM_VALUE 0 htab->map.objcg->memcg->css.refcnt.percpu_count_ptr 1-u64max
PARAM_VALUE 1 elem 4096-ptr_max
PARAM_VALUE 1 elem->node->next->pprev 1-u64max
PARAM_VALUE 1 elem->sk 4096-ptr_max
PARAM_VALUE 1 elem->sk->sk_callback_lock.dep_map->name 0-255
PARAM_VALUE 1 elem->sk->sk_user_data 0
CAPPED_DATA 1 elem 1
CAPPED_DATA 1 elem->hash 1
DATA_SOURCE 1 elem r sock_hash_lookup_elem_raw
PREEMPT_ADD
NOCHECK_CALL
LOCK2 &bucket->lock
LOCK2 bh
HALF_LOCKED2 &sk->sk_lock.slock
TYPE_LOCK (struct bpf_shtab_bucket)->lock