Defined in 1 files as a function:

Referenced in 6 files:

Smatch caller information:

net/ipv4/tcp_ipv4.c bpf_iter_tcp_resume_established() -> inet_ehash_lockp()

Type Parameter Key Value
CAPPED_DATA 1 hash 1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &seq->lock
LOCK2 lock
TYPE_LOCK (struct seq_file)->lock

net/ipv4/tcp_ipv4.c bpf_iter_tcp_unlock_bucket() -> inet_ehash_lockp()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 &seq->lock
TYPE_LOCK (struct seq_file)->lock

net/ipv4/tcp_ipv4.c established_get_first() -> inet_ehash_lockp()

Type Parameter Key Value
PARAM_VALUE 0 hashinfo 4096-ptr_max
CAPPED_DATA 1 hash 1
PARAM_COMPARE 0 hashinfo->ehash_mask >= $1
PARAM_COMPARE 1 hash <= $0->ehash_mask
RX_PATH
TASK_NOT_RUNNING
LOCK2 &seq->lock
HALF_LOCKED2 lock
TYPE_LOCK (struct seq_file)->lock

net/ipv4/tcp_ipv4.c established_get_next() -> inet_ehash_lockp()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 &seq->lock
HALF_LOCKED2 lock
TYPE_LOCK (struct seq_file)->lock

net/ipv4/tcp_ipv4.c tcp_seq_stop() -> inet_ehash_lockp()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 &seq->lock
TYPE_LOCK (struct seq_file)->lock

net/ipv4/tcp_diag.c tcp_diag_dump() -> inet_ehash_lockp()

Type Parameter Key Value
PARAM_VALUE 0 hashinfo 4096-ptr_max
CAPPED_DATA 1 hash 1
PARAM_COMPARE 0 hashinfo->ehash_mask >= $1
PARAM_COMPARE 1 hash <= $0->ehash_mask
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &nlk->nl_cb_mutex
TYPE_LOCK (struct netlink_sock)->nl_cb_mutex

net/ipv6/inet6_hashtables.c __inet6_check_established() -> inet_ehash_lockp()

Type Parameter Key Value
PARAM_VALUE 0 hashinfo 4096-ptr_max
DATA_SOURCE 1 hash $5
RX_PATH
TASK_NOT_RUNNING
LOCK2 bh
HALF_LOCKED2 &head->lock
HALF_LOCKED2 sk

net/ipv4/inet_connection_sock.c reqsk_queue_unlink() -> inet_ehash_lockp()

Type Parameter Key Value
DATA_SOURCE 0 hashinfo r tcp_get_hashinfo
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

net/ipv4/inet_hashtables.c __inet_check_established() -> inet_ehash_lockp()

Type Parameter Key Value
PARAM_VALUE 0 hashinfo 4096-ptr_max
DATA_SOURCE 1 hash $5
RX_PATH
TASK_NOT_RUNNING
LOCK2 bh
HALF_LOCKED2 &head->lock
HALF_LOCKED2 sk

net/ipv4/inet_hashtables.c __inet_hash_connect() -> inet_ehash_lockp()

Type Parameter Key Value
PARAM_VALUE 0 hashinfo 4096-ptr_max
CAPPED_DATA 0 hashinfo->bind2_bucket_cachep 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &head->lock
LOCK2 &head2->lock
LOCK2 bh
HALF_LOCKED2 global &once_mutex
HALF_LOCKED2 sk
TYPE_LOCK (struct inet_bind_hashbucket)->lock

net/ipv4/inet_hashtables.c inet_ehash_insert() -> inet_ehash_lockp()

Type Parameter Key Value
PARAM_VALUE 0 hashinfo 4096-ptr_max
DATA_SOURCE 0 hashinfo r tcp_get_hashinfo
DATA_SOURCE 1 hash r sk_ehashfn
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

net/ipv4/inet_hashtables.c inet_unhash() -> inet_ehash_lockp()

Type Parameter Key Value
DATA_SOURCE 0 hashinfo r tcp_get_hashinfo
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 lsk
HALF_LOCKED2 sk

net/ipv4/inet_timewait_sock.c inet_twsk_deschedule_put() -> inet_ehash_lockp()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 bh
HALF_LOCKED2 global &pernet_ops_rwsem
HALF_LOCKED2 global &tcp_exit_batch_mutex

net/ipv4/inet_timewait_sock.c inet_twsk_hashdance_schedule() -> inet_ehash_lockp()

Type Parameter Key Value
DATA_SOURCE 0 hashinfo $2
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 bh
HALF_LOCKED2 sk

net/ipv4/inet_timewait_sock.c inet_twsk_kill() -> inet_ehash_lockp()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING