Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

net/ipv4/udp.c udp_lib_get_port() -> udp_lib_lport_inuse2()

Type Parameter Key Value
PARAM_VALUE 0 net 4096-ptr_max
PARAM_VALUE 0 net->ipv4.udp_table 4096-ptr_max
PARAM_VALUE 1 num 1-u16max
PARAM_VALUE 2 hslot2 4096-ptr_max
PARAM_VALUE 3 sk 4096-ptr_max
PARAM_VALUE 3 sk->__sk_common.skc_prot 4096-ptr_max
BUF_SIZE 2 hslot2 96
BUF_SIZE 3 sk->sk_user_data (-1),232
CAPPED_DATA 2 hslot2->count 1
CAPPED_DATA 3 sk->__sk_common.skc_net.net 1
DATA_SOURCE 1 num $1
DATA_SOURCE 2 hslot2 r udp_hashslot2
DATA_SOURCE 3 sk $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 num 1-u16max
NO_OVERFLOW_SIMPLE 3 sk->sk_backlog.len
NO_OVERFLOW_SIMPLE 3 sk->sk_receive_queue.prev->next->tail
NO_OVERFLOW_SIMPLE 3 sk->sk_receive_queue.prev->next->truesize
NO_OVERFLOW_SIMPLE 3 sk->sk_receive_queue.prev->tail
NO_OVERFLOW_SIMPLE 3 sk->sk_receive_queue.prev->truesize
NO_OVERFLOW_SIMPLE 3 sk->sk_write_queue.next->prev->tail
NO_OVERFLOW_SIMPLE 3 sk->sk_write_queue.next->prev->truesize
NO_OVERFLOW_SIMPLE 3 sk->sk_write_queue.next->tail
NO_OVERFLOW_SIMPLE 3 sk->sk_write_queue.next->truesize
UNITS 0 net unit_byte
LOCK2 &hslot->lock
LOCK2 bh
HALF_LOCKED2 global &port_mutex
HALF_LOCKED2 3 sk
TYPE_LOCK (struct udp_hslot)->lock

net/ipv4/udp.c udp_lib_get_port() -> udp_lib_lport_inuse2()

Type Parameter Key Value
PARAM_VALUE 0 net 4096-ptr_max
PARAM_VALUE 0 net->ipv4.udp_table 4096-ptr_max
PARAM_VALUE 1 num 1-u16max
PARAM_VALUE 2 hslot2->lock.rlock.dep_map->name 0-255
PARAM_VALUE 3 sk 4096-ptr_max
PARAM_VALUE 3 sk->__sk_common.skc_prot 4096-ptr_max
BUF_SIZE 2 hslot2 96
BUF_SIZE 3 sk->sk_user_data (-1),232
CAPPED_DATA 1 num 1
CAPPED_DATA 3 sk->__sk_common.skc_net.net 1
DATA_SOURCE 1 num $1
DATA_SOURCE 2 hslot2 r udp_hashslot2
DATA_SOURCE 3 sk $0
NOSPEC 1 num
NOSPEC 1 num
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 num 1-u16max[c]
NO_OVERFLOW_SIMPLE 3 sk->sk_backlog.len
NO_OVERFLOW_SIMPLE 3 sk->sk_receive_queue.prev->next->tail
NO_OVERFLOW_SIMPLE 3 sk->sk_receive_queue.prev->next->truesize
NO_OVERFLOW_SIMPLE 3 sk->sk_receive_queue.prev->tail
NO_OVERFLOW_SIMPLE 3 sk->sk_receive_queue.prev->truesize
NO_OVERFLOW_SIMPLE 3 sk->sk_write_queue.next->prev->tail
NO_OVERFLOW_SIMPLE 3 sk->sk_write_queue.next->prev->truesize
NO_OVERFLOW_SIMPLE 3 sk->sk_write_queue.next->tail
NO_OVERFLOW_SIMPLE 3 sk->sk_write_queue.next->truesize
UNITS 0 net unit_byte
LOCK2 &hslot->lock
LOCK2 bh
HALF_LOCKED2 global &port_mutex
HALF_LOCKED2 3 sk
TYPE_LOCK (struct udp_hslot)->lock