Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

net/packet/af_packet.c packet_do_bind() -> register_prot_hook()

Type Parameter Key Value
PARAM_VALUE 0 sk 4096-ptr_max
PARAM_VALUE 0 sk->sk_lock.owned 1
PARAM_VALUE 0 sk->sk_lock.slock.rlock.dep_map->name 0-255
PARAM_VALUE 0 sk->sk_lock.wq.head.prev 4096-ptr_max
PARAM_VALUE 0 sk->sk_lock.wq.head.prev->next 4096-ptr_max
PARAM_VALUE 0 sk->sk_lock.wq.head.prev->next->next 4096-ptr_max
CAPPED_DATA 0 sk 1
DATA_SOURCE 0 sk $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 sk->sk_backlog.len
UNITS 0 sk unit_byte
LOCK2 &po->bind_lock
LOCK2 rcu_read
LOCK2 0 sk
TYPE_LOCK (struct packet_sock)->bind_lock

net/packet/af_packet.c packet_notifier() -> register_prot_hook()

Type Parameter Key Value
PARAM_VALUE 0 sk 4096-ptr_max
PARAM_VALUE 0 sk->sk_dst_cache->dev_rcu->rtnl_link_ops->maxtype 0-6,8-10,15,18,20,22,24,34,50
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &po->bind_lock
LOCK2 rcu_read
TYPE_LOCK (struct packet_sock)->bind_lock

net/packet/af_packet.c packet_set_ring() -> register_prot_hook()

Type Parameter Key Value
PARAM_VALUE 0 sk 4096-ptr_max
PARAM_VALUE 0 sk->sk_lock.owned 1
PARAM_VALUE 0 sk->sk_lock.slock.rlock.dep_map->name 0-255
PARAM_VALUE 0 sk->sk_lock.wq.head.prev 4096-ptr_max
PARAM_VALUE 0 sk->sk_lock.wq.head.prev->next 4096-ptr_max
PARAM_VALUE 0 sk->sk_lock.wq.head.prev->next->next 4096-ptr_max
CAPPED_DATA 0 sk 1
DATA_SOURCE 0 sk $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 sk->sk_backlog.len
UNITS 0 sk unit_byte
LOCK2 &po->bind_lock
LOCK2 0 sk
TYPE_LOCK (struct packet_sock)->bind_lock