Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

net/rds/af_rds.c rds_release() -> rds_notify_queue_get()

Type Parameter Key Value
PARAM_VALUE 0 rs 4096-ptr_max
PARAM_VALUE 0 rs->rs_cong_list.next->prev 4096-ptr_max
PARAM_VALUE 0 rs->rs_cong_list.prev->next 4096-ptr_max
PARAM_VALUE 0 rs->rs_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 rs->rs_rdma_keys.rb_node 0,4096-ptr_max
PARAM_VALUE 0 rs->rs_rdma_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 rs->rs_recv_lock.dep_map->name 0-255
PARAM_VALUE 0 rs->rs_transport 0,4096-ptr_max
PARAM_VALUE 0 rs->rs_transport->t_type 0,2-3
PARAM_VALUE 1 msghdr 0
DATA_SOURCE 0 rs r rds_sk_to_rs
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &inode->i_rwsem

net/rds/recv.c rds_recvmsg() -> rds_notify_queue_get()

Type Parameter Key Value
PARAM_VALUE 0 rs 4096-ptr_max
PARAM_VALUE 1 msghdr 4096-ptr_max
BUF_SIZE 1 msghdr->msg_control (-1)-0,16-17,24
BUF_SIZE 1 msghdr->msg_name (-1)-0,12,128
CAPPED_DATA 0 &rs->rs_notify_queue 1
DATA_SOURCE 0 rs r rds_sk_to_rs
DATA_SOURCE 1 msghdr $1
PARAM_COMPARE 0 &rs->rs_notify_queue != $0->rs_notify_queue.next
NOSPEC 1 msghdr->msg_iter.count
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 msghdr->msg_control 4096-ptr_max[c][u]
USER_DATA 1 msghdr->msg_control_user 4096-ptr_max[c][u]
USER_DATA 1 msghdr->msg_controllen 0-u64max
USER_DATA 1 msghdr->msg_flags 0-u32max[c]
USER_DATA 1 msghdr->msg_iter.count 0-u64max
USER_DATA 1 msghdr->msg_iter.iov_offset 0-u64max[c]
USER_DATA 1 *msghdr->msg_name s64min-s64max
HALF_LOCKED2 &vq->mutex
HALF_LOCKED2 sk