Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 12 files:
- drivers/acpi/pfr_update.c, line 487
- drivers/fsi/fsi-sbefifo.c, line 845
- drivers/net/ppp/ppp_generic.c, line 485
- drivers/vhost/net.c
- drivers/vhost/scsi.c
- drivers/vhost/vhost.c
- drivers/vhost/vringh.c
- drivers/vhost/vsock.c
- fs/fuse/ioctl.c
- fs/seq_file.c, line 160
- io_uring/net.c
- lib/iov_iter.c
Smatch caller information:
lib/iov_iter.c __import_iovec() -> iov_iter_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | direction | 0-1 |
| PARAM_VALUE | 2 | iov | 0-ptr_max |
| PARAM_VALUE | 3 | nr_segs | 0,2-1024 |
| BUF_SIZE | 2 | iov | (-1),16-16384 |
| BUF_SIZE | 2 | iov | (-1),16-16384 |
| CAPPED_DATA | 3 | nr_segs | 1 |
| DATA_SOURCE | 0 | i | $5 |
| DATA_SOURCE | 1 | direction | $0 |
| DATA_SOURCE | 2 | iov | r iovec_from_user |
| DATA_SOURCE | 3 | nr_segs | $2 |
| NOSPEC | 3 | nr_segs | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 3 | nr_segs | 0,2-1024[c] |
| UNITS | 3 | nr_segs | unit_byte |
| HALF_LOCKED2 | &ctx->uring_lock |
drivers/vhost/vhost.c get_indirect() -> iov_iter_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 4326463889905065984 |
| PARAM_VALUE | 1 | direction | 1 |
| PARAM_VALUE | 3 | nr_segs | 0-s32max |
| CAPPED_DATA | 4 | count | 1 |
| DATA_SOURCE | 3 | nr_segs | r translate_desc |
| DATA_SOURCE | 4 | count | r vhost32_to_cpu |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HOST_DATA | 4 | count | 0-u32max[c] |
| USER_DATA | 4 | count | 0-u32max[c] |
| HALF_LOCKED2 | &vq->mutex | ||
| HALF_LOCKED2 | &vq->mutex | ||
| TYPE_LOCK | (struct vhost_virtqueue)->mutex |
drivers/vhost/vhost.c vhost_copy_from_user() -> iov_iter_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 5945541584224477184 |
| PARAM_VALUE | 1 | direction | 1 |
| PARAM_VALUE | 3 | nr_segs | 0-s32max |
| PARAM_VALUE | 4 | count | 16 |
| BUF_SIZE | 2 | iov | 1024 |
| DATA_SOURCE | 3 | nr_segs | r translate_desc |
| DATA_SOURCE | 4 | count | $3 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 4 | count | unit_byte |
| HALF_LOCKED2 | &vq->mutex | ||
| HALF_LOCKED2 | &vq->mutex | ||
| TYPE_LOCK | (struct vhost_virtqueue)->mutex |
drivers/vhost/vhost.c vhost_copy_to_user() -> iov_iter_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 9112891762638348288 |
| PARAM_VALUE | 1 | direction | 0 |
| PARAM_VALUE | 3 | nr_segs | 0-s32max |
| BUF_SIZE | 2 | iov | 1024 |
| CAPPED_DATA | 4 | count | 1 |
| DATA_SOURCE | 3 | nr_segs | r translate_desc |
| DATA_SOURCE | 4 | count | $3 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &vq->mutex |
drivers/vhost/vringh.c copy_from_iotlb() -> iov_iter_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 9184928490013982720 |
| PARAM_VALUE | 1 | direction | 1 |
| PARAM_VALUE | 3 | nr_segs | 1-s32max |
| NOCHECK_CALL |
drivers/vhost/vringh.c copy_to_iotlb() -> iov_iter_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 561911438965960704 |
| PARAM_VALUE | 1 | direction | 0 |
| PARAM_VALUE | 3 | nr_segs | 1-s32max |
| NOCHECK_CALL |
drivers/fsi/fsi-sbefifo.c sbefifo_user_read() -> iov_iter_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 6353765128256086016 |
| PARAM_VALUE | 1 | direction | 0 |
| PARAM_VALUE | 2 | iov | 910371942291525632 |
| PARAM_VALUE | 3 | nr_segs | 1 |
| PARAM_VALUE | 4 | count | 0-1000000000,2147479552 |
| DATA_SOURCE | 4 | count | $2 |
| FUZZY_MAX | 4 | count | 2147479552 |
| BIT_INFO | 4 | count | 0x0,0x7ffffffc |
| BIT_INFO | 4 | count | 0x0,0x7ffffffc |
| NOCHECK_CALL | |||
| USER_DATA | 2 | iov->iov_len | 0-1000000000 |
| USER_DATA | 4 | count | 0-1000000000 |
| LOCK2 | &user->file_lock | ||
| TYPE_LOCK | (struct sbefifo_user)->file_lock |
drivers/net/ppp/ppp_generic.c ppp_read() -> iov_iter_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 4919810858291347456 |
| PARAM_VALUE | 1 | direction | 0 |
| PARAM_VALUE | 2 | iov | 1487806108612141056 |
| PARAM_VALUE | 3 | nr_segs | 1 |
| PARAM_VALUE | 4 | count | 0-1000000000,2147479552 |
| DATA_SOURCE | 4 | count | $2 |
| FUZZY_MAX | 4 | count | 2147479552 |
| NOCHECK_CALL | |||
| USER_DATA | 2 | iov->iov_len | 0-1000000000 |
| USER_DATA | 4 | count | 0-1000000000 |
| UNITS | 4 | count | unit_byte |
drivers/acpi/pfr_update.c pfru_write() -> iov_iter_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 9171719215284158464 |
| PARAM_VALUE | 1 | direction | 1 |
| PARAM_VALUE | 2 | iov | 225399883685109760 |
| PARAM_VALUE | 3 | nr_segs | 1 |
| PARAM_VALUE | 4 | count | 0-1000000000,2147479552 |
| CAPPED_DATA | 4 | count | 1 |
| CAPPED_DATA | 4 | count | 1 |
| DATA_SOURCE | 4 | count | $2 |
| FUZZY_MAX | 4 | count | 2147479552 |
| NOCHECK_CALL | |||
| USER_DATA | 2 | iov->iov_len | 0-1000000000[c] |
| USER_DATA | 4 | count | 0-1000000000[c] |
fs/seq_file.c seq_read() -> iov_iter_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 2511125782718840832 |
| PARAM_VALUE | 1 | direction | 0 |
| PARAM_VALUE | 2 | iov | 8438245099990446080 |
| PARAM_VALUE | 3 | nr_segs | 1 |
| PARAM_VALUE | 4 | count | 0-1000000000,2147479552 |
| DATA_SOURCE | 4 | count | $2 |
| FUZZY_MAX | 4 | count | 2147479552 |
| NOCHECK_CALL | |||
| USER_DATA | 2 | iov->iov_len | 0-1000000000 |
| USER_DATA | 4 | count | 0-1000000000 |
drivers/vhost/net.c handle_rx() -> iov_iter_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 677290564554768 |
| PARAM_VALUE | 1 | direction | 0 |
| PARAM_VALUE | 3 | nr_segs | 1 |
| PARAM_VALUE | 4 | count | 1 |
| BUF_SIZE | 2 | iov | 16384 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &vq->mutex | ||
| TYPE_LOCK | (struct vhost_virtqueue)->mutex |
drivers/vhost/net.c handle_rx() -> iov_iter_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 677290564554768 |
| PARAM_VALUE | 1 | direction | 0 |
| BUF_SIZE | 2 | iov | 16384 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 4 | count | unit_byte |
| LOCK2 | &vq->mutex | ||
| TYPE_LOCK | (struct vhost_virtqueue)->mutex |
drivers/vhost/net.c init_iov_iter() -> iov_iter_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 4386511803419406352,6841281207476211728 |
| PARAM_VALUE | 1 | direction | 1 |
| PARAM_VALUE | 3 | nr_segs | 0-s32max,18446744071562067968-u64max |
| BUF_SIZE | 2 | iov | 16384 |
| CAPPED_DATA | 3 | nr_segs | 1 |
| DATA_SOURCE | 0 | i | $1 |
| DATA_SOURCE | 3 | nr_segs | $3 |
| DATA_SOURCE | 4 | count | r iov_length |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &vq->mutex | ||
| TYPE_LOCK | (struct vhost_virtqueue)->mutex |
io_uring/net.c io_recv_buf_select() -> iov_iter_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | direction | 0 |
| PARAM_VALUE | 3 | nr_segs | 0,2-s32max |
| DATA_SOURCE | 3 | nr_segs | r io_buffers_peek |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 4 | count |
io_uring/net.c io_send_select_buffer() -> iov_iter_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | direction | 1 |
| PARAM_VALUE | 3 | nr_segs | 0,2-s32max |
| DATA_SOURCE | 3 | nr_segs | r io_buffers_select |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 4 | count |
drivers/vhost/vsock.c vhost_transport_do_send_pkt() -> iov_iter_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 3788786165930684416 |
| PARAM_VALUE | 1 | direction | 0 |
| PARAM_VALUE | 2 | iov | 4096-ptr_max |
| PARAM_VALUE | 4 | count | 44-u64max |
| BUF_SIZE | 2 | iov | 16384 |
| CAPPED_DATA | 3 | nr_segs | 1 |
| DATA_SOURCE | 4 | count | r iov_length |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 4 | count | unit_byte |
| LOCK2 | &vq->mutex | ||
| TYPE_LOCK | (struct vhost_virtqueue)->mutex |
drivers/vhost/vsock.c vhost_vsock_alloc_skb() -> iov_iter_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 813215126194999296 |
| PARAM_VALUE | 1 | direction | 1 |
| PARAM_VALUE | 4 | count | 44-65580 |
| BUF_SIZE | 2 | iov | 16384 |
| CAPPED_DATA | 3 | nr_segs | 1 |
| CAPPED_DATA | 4 | count | 1 |
| CAPPED_DATA | 4 | count | 1 |
| DATA_SOURCE | 3 | nr_segs | $1 |
| DATA_SOURCE | 4 | count | r iov_length |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 4 | count | unit_byte |
| LOCK2 | &vq->mutex | ||
| TYPE_LOCK | (struct vhost_virtqueue)->mutex |
fs/fuse/ioctl.c fuse_do_ioctl() -> iov_iter_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 4512535879257411584 |
| PARAM_VALUE | 1 | direction | 1 |
| PARAM_VALUE | 2 | iov | 0,4096-ptr_max |
| PARAM_VALUE | 3 | nr_segs | 0-256 |
| PARAM_VALUE | 4 | count | 1-u64max |
| BUF_SIZE | 2 | iov | 0,4096 |
| BUF_SIZE | 2 | iov | 0,4096 |
| CAPPED_DATA | 3 | nr_segs | 1 |
| DATA_SOURCE | 4 | count | r iov_length |
| FUZZY_MAX | 3 | nr_segs | 1 |
| NOCHECK_CALL | |||
| USER_DATA | 2 | iov->iov_len | 0-16383[c] |
fs/fuse/ioctl.c fuse_do_ioctl() -> iov_iter_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 4512535879257411584 |
| PARAM_VALUE | 1 | direction | 0 |
| PARAM_VALUE | 3 | nr_segs | 0-256 |
| PARAM_VALUE | 4 | count | 0-u32max |
| BUF_SIZE | 2 | iov | 0,4096,u64max |
| BUF_SIZE | 2 | iov | 0,4096,u64max |
| CAPPED_DATA | 3 | nr_segs | 1 |
| CAPPED_DATA | 4 | count | 1 |
| DATA_SOURCE | 4 | count | r fuse_send_ioctl |
| FUZZY_MAX | 3 | nr_segs | 1 |
| NOCHECK_CALL | |||
| USER_DATA | 2 | iov->iov_len | 0-16383[c] |
| UNITS | 4 | count | unit_byte |
drivers/vhost/scsi.c vhost_scsi_complete_cmd_work() -> iov_iter_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 7101051262575710208 |
| PARAM_VALUE | 1 | direction | 0 |
| PARAM_VALUE | 4 | count | 108 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 3 | nr_segs | unit_array_size |
| UNITS | 4 | count | unit_byte |
| LOCK2 | &svq->vq.mutex | ||
| TYPE_LOCK | (struct vhost_virtqueue)->mutex |
drivers/vhost/scsi.c vhost_scsi_get_desc() -> iov_iter_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 559487409486639176,5828244295369908296 |
| PARAM_VALUE | 1 | direction | 1 |
| PARAM_VALUE | 2 | iov | 4096-ptr_max |
| BUF_SIZE | 2 | iov | 16384 |
| DATA_SOURCE | 4 | count | r iov_length |
| MEM_ZERO | 0 | i | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 4 | count | unit_byte |
| LOCK2 | &vq->mutex | ||
| TYPE_LOCK | (struct vhost_virtqueue)->mutex |
drivers/vhost/scsi.c vhost_scsi_handle_vq() -> iov_iter_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 6159719202867474432 |
| PARAM_VALUE | 1 | direction | 0 |
| PARAM_VALUE | 2 | iov | 4096-ptr_max |
| PARAM_VALUE | 4 | count | 108-4294967403 |
| BUF_SIZE | 2 | iov | 16384 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 4 | count | unit_byte |
| LOCK2 | &vq->mutex | ||
| TYPE_LOCK | (struct vhost_virtqueue)->mutex |
drivers/vhost/scsi.c vhost_scsi_send_an_resp() -> iov_iter_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 5070997358070403072 |
| PARAM_VALUE | 1 | direction | 0 |
| PARAM_VALUE | 2 | iov | 4096-ptr_max |
| PARAM_VALUE | 4 | count | 5 |
| BUF_SIZE | 2 | iov | 16384 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 4 | count | unit_byte |
| LOCK2 | &vq->mutex | ||
| TYPE_LOCK | (struct vhost_virtqueue)->mutex |
drivers/vhost/scsi.c vhost_scsi_send_bad_target() -> iov_iter_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 2369761774671327232 |
| PARAM_VALUE | 1 | direction | 0 |
| PARAM_VALUE | 2 | iov | 4096-ptr_max |
| PARAM_VALUE | 4 | count | 1,5,108 |
| BUF_SIZE | 2 | iov | 16384 |
| FUZZY_MAX | 4 | count | 108 |
| BIT_INFO | 4 | count | 0x0,0x6d |
| BIT_INFO | 4 | count | 0x0,0x6d |
| HARD_MAX | 4 | count | 108 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 4 | count | unit_byte |
| LOCK2 | &vq->mutex | ||
| TYPE_LOCK | (struct vhost_virtqueue)->mutex |
drivers/vhost/scsi.c vhost_scsi_send_status() -> iov_iter_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 789066928834891776 |
| PARAM_VALUE | 1 | direction | 0 |
| PARAM_VALUE | 4 | count | 108 |
| NOCHECK_CALL | |||
| UNITS | 4 | count | unit_byte |
drivers/vhost/scsi.c vhost_scsi_send_tmf_resp() -> iov_iter_init()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | i | 4804368940871233536 |
| PARAM_VALUE | 1 | direction | 0 |
| PARAM_VALUE | 2 | iov | 4096-ptr_max |
| PARAM_VALUE | 3 | nr_segs | 0-s32max,18446744071562067968-u64max |
| PARAM_VALUE | 4 | count | 1 |
| BUF_SIZE | 2 | iov | (-1),16384 |
| BUF_SIZE | 2 | iov | (-1),16384 |
| DATA_SOURCE | 2 | iov | $4 |
| DATA_SOURCE | 3 | nr_segs | $2 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 4 | count | unit_byte |
| HALF_LOCKED2 | &tmf->svq->vq.mutex | ||
| HALF_LOCKED2 | &vq->mutex | ||
| TYPE_LOCK | (struct vhost_virtqueue)->mutex |