Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 1 files:
Smatch caller information:
drivers/vhost/net.c handle_tx_copy() -> (struct proto_ops)->sendmsg()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sock | 4096-ptr_max |
| PARAM_VALUE | 0 | sock->ops | 4096-ptr_max |
| PARAM_VALUE | 0 | sock->sk | 4096-ptr_max |
| PARAM_VALUE | 1 | m | 6841281207476211712 |
| PARAM_VALUE | 1 | m->msg_control | 0,602876650504908800,9010618188788781056 |
| PARAM_VALUE | 1 | m->msg_control_is_user | 0 |
| PARAM_VALUE | 1 | m->msg_control_user | 0,602876650504908800,9010618188788781056 |
| PARAM_VALUE | 1 | m->msg_controllen | 0,16 |
| PARAM_VALUE | 1 | m->msg_flags | 64,32832 |
| PARAM_VALUE | 1 | m->msg_get_inq | 0 |
| PARAM_VALUE | 1 | m->msg_inq | 0 |
| PARAM_VALUE | 1 | m->msg_iter.__iov | 0,4096-u64max |
| PARAM_VALUE | 1 | m->msg_iter.bvec | 0,4096-u64max |
| PARAM_VALUE | 1 | m->msg_name | 0 |
| PARAM_VALUE | 1 | m->msg_namelen | 0 |
| PARAM_VALUE | 1 | m->msg_ubuf | 0 |
| PARAM_VALUE | 1 | m->sg_from_iter | 0 |
| BUF_SIZE | 0 | sock | s32min-(-2),1-s32max |
| BUF_SIZE | 0 | sock | s32min-(-2),1-s32max |
| DATA_SOURCE | 0 | sock | $1 |
| CONTAINER | 0 | -144-32+0 | $(-1) |
| TASK_NOT_RUNNING | |||
| LOCK2 | &vq->mutex | ||
| TYPE_LOCK | (struct vhost_virtqueue)->mutex |
drivers/vhost/net.c handle_tx_zerocopy() -> (struct proto_ops)->sendmsg()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sock | 4096-ptr_max |
| PARAM_VALUE | 0 | sock->ops | 4096-ptr_max |
| PARAM_VALUE | 1 | m | 4386511803419406336 |
| PARAM_VALUE | 1 | m->msg_control | 0,602876650504908800 |
| PARAM_VALUE | 1 | m->msg_control_is_user | 0 |
| PARAM_VALUE | 1 | m->msg_control_user | 0,602876650504908800 |
| PARAM_VALUE | 1 | m->msg_controllen | 0,16 |
| PARAM_VALUE | 1 | m->msg_flags | 64,32832 |
| PARAM_VALUE | 1 | m->msg_get_inq | 0 |
| PARAM_VALUE | 1 | m->msg_inq | 0 |
| PARAM_VALUE | 1 | m->msg_iter.__iov | 0,4096-u64max |
| PARAM_VALUE | 1 | m->msg_iter.bvec | 0,4096-u64max |
| PARAM_VALUE | 1 | m->msg_name | 0 |
| PARAM_VALUE | 1 | m->msg_namelen | 0 |
| PARAM_VALUE | 1 | m->msg_ubuf | 0 |
| PARAM_VALUE | 1 | m->sg_from_iter | 0 |
| BUF_SIZE | 0 | sock | s32min-(-2),1-s32max |
| BUF_SIZE | 0 | sock | s32min-(-2),1-s32max |
| DATA_SOURCE | 0 | sock | $1 |
| CONTAINER | 0 | -144-32+0 | $(-1) |
| TASK_NOT_RUNNING | |||
| LOCK2 | &vq->mutex | ||
| TYPE_LOCK | (struct vhost_virtqueue)->mutex |
drivers/vhost/net.c vhost_tx_batch() -> (struct proto_ops)->sendmsg()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sock | 4096-ptr_max |
| PARAM_VALUE | 0 | sock->ops | 4096-ptr_max |
| PARAM_VALUE | 1 | m | 4386511803419406336,6841281207476211712 |
| PARAM_VALUE | 1 | m->msg_control | 9010618188788781056 |
| PARAM_VALUE | 1 | m->msg_control_user | 9010618188788781056 |
| PARAM_VALUE | 1 | m->msg_controllen | 16 |
| PARAM_VALUE | 1 | m->msg_flags | 64,32832 |
| PARAM_VALUE | 1 | m->msg_inq | 0 |
| PARAM_VALUE | 1 | m->msg_name | 0 |
| PARAM_VALUE | 1 | m->msg_ubuf | 0 |
| PARAM_VALUE | 2 | size | 0 |
| BUF_SIZE | 0 | sock | s32min-(-2),1-s32max |
| BUF_SIZE | 0 | sock | s32min-(-2),1-s32max |
| BUF_SIZE | 1 | m->msg_control | 16 |
| DATA_SOURCE | 0 | sock | $2 |
| DATA_SOURCE | 1 | m | $3 |
| CONTAINER | 0 | -144-32+0 | $(-1) |
| TASK_NOT_RUNNING | |||
| LOCK2 | &vq->mutex | ||
| TYPE_LOCK | (struct vhost_virtqueue)->mutex |
net/smc/af_smc.c smc_sendmsg() -> (struct proto_ops)->sendmsg()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sock | 4096-ptr_max |
| PARAM_VALUE | 0 | sock->ops | 4096-ptr_max |
| PARAM_VALUE | 1 | m | 4096-ptr_max |
| BUF_SIZE | 1 | m->msg_control | (-1)-0,16,24,36-s32max |
| BUF_SIZE | 1 | m->msg_name | (-1)-0,12,28,128 |
| BUF_SIZE | 1 | m->msg_ubuf | (-1),16 |
| DATA_SOURCE | 1 | m | $1 |
| DATA_SOURCE | 2 | size | $2 |
| CONTAINER | 0 | *(-144-32+0) | $(-1) |
| NOSPEC | 1 | m->msg_iter.count | |
| TASK_NOT_RUNNING | |||
| USER_DATA | 1 | m->msg_controllen | 0-s32max[c] |
| USER_DATA | 1 | m->msg_flags | 0-u32max[c] |
| USER_DATA | 1 | m->msg_iter.count | 1-18446744073709551614 |
| USER_DATA | 1 | m->msg_iter.iov_offset | 0-u64max[c] |
| USER_DATA | 1 | m->msg_namelen | 0-128 |
| USER_DATA | 1 | *m->msg_name | s64min-s64max |
| USER_DATA | 2 | size | 0-u64max |
| USER_PTR | 1 | m->msg_control | |
| USER_PTR | 1 | m->msg_name | |
| LOCK2 | sk | ||
| HALF_LOCKED2 | &vq->mutex | ||
| HALF_LOCKED2 | sk |
drivers/target/iscsi/iscsi_target_util.c iscsit_fe_sendpage_sg() -> (struct proto_ops)->sendmsg()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sock | 4096-ptr_max |
| PARAM_VALUE | 0 | sock->ops | 4096-ptr_max |
| PARAM_VALUE | 1 | m | 5963178619889430528 |
| PARAM_VALUE | 1 | m->msg_control | 0 |
| PARAM_VALUE | 1 | m->msg_control_is_user | 0 |
| PARAM_VALUE | 1 | m->msg_control_user | 0 |
| PARAM_VALUE | 1 | m->msg_controllen | 0 |
| PARAM_VALUE | 1 | m->msg_flags | 134217728 |
| PARAM_VALUE | 1 | m->msg_get_inq | 0 |
| PARAM_VALUE | 1 | m->msg_inq | 0 |
| PARAM_VALUE | 1 | m->msg_name | 0 |
| PARAM_VALUE | 1 | m->msg_namelen | 0 |
| PARAM_VALUE | 1 | m->msg_ubuf | 0 |
| PARAM_VALUE | 1 | m->sg_from_iter | 0 |
| CAPPED_DATA | 2 | size | 1 |
| CONTAINER | 0 | *(-144-32+0) | $(-1) |
| TASK_NOT_RUNNING |
net/socket.c sock_sendmsg_nosec() -> sock_sendmsg_nosec ptr __f1()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | m | 4096-ptr_max |
| PARAM_VALUE | 2 | size | 0-1000000000 |
| BUF_SIZE | 0 | sock | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | sock | s32min-(-1),1-s32max |
| BUF_SIZE | 1 | m->msg_control | (-1),16,24,36-s32max |
| BUF_SIZE | 1 | m->msg_name | (-1),12,28,128 |
| BUF_SIZE | 1 | m->msg_ubuf | (-1),16 |
| DATA_SOURCE | 0 | sock | $0 |
| DATA_SOURCE | 1 | m | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 1 | m->msg_controllen | 0-4000000[c] |
| USER_DATA | 1 | m->msg_flags | 0-u32max[c] |
| USER_DATA | 1 | m->msg_iter.iov_offset | 0-u64max[c] |
| USER_DATA | 1 | m->msg_namelen | 0-128 |
| USER_DATA | 1 | *m->msg_name | s64min-s64max |
| USER_DATA | 2 | size | 0-1000000000 |
| NO_OVERFLOW_SIMPLE | 0 | sock->sk->sk_backlog.len | |
| NO_OVERFLOW_SIMPLE | 0 | sock->sk->sk_receive_queue.prev->end | |
| NO_OVERFLOW_SIMPLE | 0 | sock->sk->sk_receive_queue.prev->len | |
| NO_OVERFLOW_SIMPLE | 0 | sock->sk->sk_receive_queue.prev->next->end | |
| NO_OVERFLOW_SIMPLE | 0 | sock->sk->sk_receive_queue.prev->next->len | |
| NO_OVERFLOW_SIMPLE | 0 | sock->sk->sk_receive_queue.prev->next->tail | |
| NO_OVERFLOW_SIMPLE | 0 | sock->sk->sk_receive_queue.prev->next->truesize | |
| NO_OVERFLOW_SIMPLE | 0 | sock->sk->sk_receive_queue.prev->tail | |
| NO_OVERFLOW_SIMPLE | 0 | sock->sk->sk_receive_queue.prev->truesize | |
| NO_OVERFLOW_SIMPLE | 0 | sock->sk->sk_write_queue.next->end | |
| NO_OVERFLOW_SIMPLE | 0 | sock->sk->sk_write_queue.next->prev->end | |
| NO_OVERFLOW_SIMPLE | 0 | sock->sk->sk_write_queue.next->prev->tail | |
| NO_OVERFLOW_SIMPLE | 0 | sock->sk->sk_write_queue.next->prev->truesize | |
| NO_OVERFLOW_SIMPLE | 0 | sock->sk->sk_write_queue.next->tail | |
| NO_OVERFLOW_SIMPLE | 0 | sock->sk->sk_write_queue.next->truesize | |
| NO_OVERFLOW_SIMPLE | 1 | m->msg_iter.count | |
| USER_PTR | 1 | m->msg_control | |
| USER_PTR | 1 | m->msg_name |