Documented in 1 files:
Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 11 files:
- drivers/block/virtio_blk.c
- drivers/gpu/drm/virtio/virtgpu_vq.c
- drivers/net/virtio_net.c
- drivers/rpmsg/virtio_rpmsg_bus.c, line 940
- drivers/scsi/virtio_scsi.c
- drivers/virtio/virtio_ring.c
- drivers/virtio/virtio_rtc_driver.c
- fs/fuse/virtio_fs.c
- sound/virtio/virtio_card.c, line 45
- sound/virtio/virtio_ctl_msg.c, line 173
- sound/virtio/virtio_pcm_msg.c, line 261
Smatch caller information:
drivers/virtio/virtio_ring.c virtqueue_kick() -> virtqueue_notify()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | _vq->vdev->dev.parent->cma_area->available_count | 0-s64max |
| DATA_SOURCE | 0 | _vq | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &admin_vq->lock | ||
| HALF_LOCKED2 | &chan->lock | ||
| HALF_LOCKED2 | &ctrl->io_mutex | ||
| HALF_LOCKED2 | &data_vq->lock | ||
| HALF_LOCKED2 | &line->lock | ||
| HALF_LOCKED2 | &nsm->lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &port->outvq_lock | ||
| HALF_LOCKED2 | &portdev->c_ovq_lock | ||
| HALF_LOCKED2 | &priv->tx_lock | ||
| HALF_LOCKED2 | &vb->balloon_lock | ||
| HALF_LOCKED2 | &vcrypto->ctrl_lock | ||
| HALF_LOCKED2 | &vgpio->eventq_lock | ||
| HALF_LOCKED2 | &vgpio->lock | ||
| HALF_LOCKED2 | &vi->cvq_lock | ||
| HALF_LOCKED2 | &vi->lock | ||
| HALF_LOCKED2 | &vioch->lock | ||
| HALF_LOCKED2 | &viommu->request_lock | ||
| HALF_LOCKED2 | &vpmem->pmem_lock | ||
| HALF_LOCKED2 | &vrp->tx_lock | ||
| HALF_LOCKED2 | &vscsi->event_vq.vq_lock | ||
| HALF_LOCKED2 | &vsock->event_lock | ||
| HALF_LOCKED2 | &vsock->rx_lock | ||
| HALF_LOCKED2 | &vsock->tx_lock | ||
| HALF_LOCKED2 | _T->lock | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | global &hwsim_virtio_lock | ||
| HALF_LOCKED2 | global &the_virtio_vsock_mutex | ||
| HALF_LOCKED2 | irq | ||
| HALF_LOCKED2 | rcu_read |
drivers/scsi/virtio_scsi.c virtscsi_add_cmd() -> virtqueue_notify()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/scsi/virtio_scsi.c virtscsi_kick_vq() -> virtqueue_notify()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | __tag_set->srcu | ||
| HALF_LOCKED2 | rcu_read |
drivers/gpu/drm/virtio/virtgpu_vq.c virtio_gpu_notify() -> virtqueue_notify()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &dev->object_name_lock | ||
| HALF_LOCKED2 | &file_priv->prime.lock | ||
| HALF_LOCKED2 | &vfpriv->context_lock | ||
| HALF_LOCKED2 | &vgdev->obj_restore_lock | ||
| HALF_LOCKED2 | global &drm_unplug_srcu |
drivers/gpu/drm/virtio/virtgpu_vq.c virtio_gpu_panic_notify() -> virtqueue_notify()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | _vq | 4096-ptr_max |
| PARAM_VALUE | 0 | _vq->num_free | 0-1 |
| CAPPED_DATA | 0 | _vq->num_free | 1 |
| HARD_MAX | 0 | _vq->num_free | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &(plane->dev)->mode_config.panic_lock | ||
| LOCK2 | flags | ||
| HALF_LOCKED2 | rcu_read |
drivers/gpu/drm/virtio/virtgpu_vq.c virtio_gpu_queue_cursor() -> virtqueue_notify()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | global &drm_unplug_srcu | ||
| HALF_LOCKED2 | irq |
drivers/virtio/virtio_rtc_driver.c viortc_alarmq_hdlr() -> virtqueue_notify()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | _vq | 4096-ptr_max |
| PARAM_VALUE | 0 | _vq->callback | 1-u64max |
| PARAM_VALUE | 0 | _vq->vdev | 4096-ptr_max |
| DATA_SOURCE | 0 | _vq | $2 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &desc->request_mutex | ||
| HALF_LOCKED2 | &vp_dev->lock | ||
| HALF_LOCKED2 | _T->lock | ||
| HALF_LOCKED2 | flags |
drivers/virtio/virtio_rtc_driver.c viortc_msg_xfer() -> virtqueue_notify()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &rtc->ops_lock |
drivers/virtio/virtio_rtc_driver.c viortc_probe() -> virtqueue_notify()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING |
drivers/virtio/virtio_rtc_driver.c viortc_restore() -> virtqueue_notify()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING |
fs/fuse/virtio_fs.c send_forget_request() -> virtqueue_notify()
| Type | Parameter | Key | Value |
|---|---|---|---|
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
fs/fuse/virtio_fs.c virtio_fs_enqueue_req() -> virtqueue_notify()
| Type | Parameter | Key | Value |
|---|---|---|---|
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/rpmsg/virtio_rpmsg_bus.c rpmsg_probe() -> virtqueue_notify()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
sound/virtio/virtio_card.c virtsnd_event_send() -> virtqueue_notify()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | _vq | 4096-ptr_max |
| PARAM_VALUE | 0 | _vq->vdev | 4096-ptr_max |
| DATA_SOURCE | 0 | _vq | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &queue->lock | ||
| LOCK2 | irq | ||
| TYPE_LOCK | (struct virtio_snd_queue)->lock |
drivers/block/virtio_blk.c virtblk_add_req_batch() -> virtqueue_notify()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | __tag_set->srcu | ||
| HALF_LOCKED2 | rcu_read |
drivers/block/virtio_blk.c virtio_commit_rqs() -> virtqueue_notify()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | __tag_set->srcu | ||
| HALF_LOCKED2 | rcu_read |
drivers/block/virtio_blk.c virtio_queue_rq() -> virtqueue_notify()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | __tag_set->srcu | ||
| HALF_LOCKED2 | rcu_read |
drivers/net/virtio_net.c start_xmit() -> virtqueue_notify()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | _vq | 4096-ptr_max |
| PARAM_VALUE | 0 | _vq->vdev | 4096-ptr_max |
| PARAM_VALUE | 0 | _vq->vdev->priv | 4096-ptr_max |
| PARAM_VALUE | 0 | _vq->vdev->priv->hdr_len | 0-255 |
| CAPPED_DATA | 0 | _vq->vdev->priv->hdr_len | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &dev->tx_global_lock | ||
| HALF_LOCKED2 | &txq->_xmit_lock | ||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | rcu_read |
drivers/net/virtio_net.c try_fill_recv() -> virtqueue_notify()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING |
drivers/net/virtio_net.c virtnet_poll() -> virtqueue_notify()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | rcu_read |
drivers/net/virtio_net.c virtnet_xdp_xmit() -> virtqueue_notify()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | rcu_read |
drivers/net/virtio_net.c virtnet_xsk_xmit_batch() -> virtqueue_notify()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | _vq | 4096-ptr_max |
| PARAM_VALUE | 0 | _vq->vdev | 4096-ptr_max |
| PARAM_VALUE | 0 | _vq->vdev->priv | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &txq->_xmit_lock | ||
| HALF_LOCKED2 | &ni->dev_lock | ||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | rcu_read | ||
| TYPE_LOCK | (struct netdev_queue)->_xmit_lock |
sound/virtio/virtio_pcm_msg.c virtsnd_pcm_msg_send() -> virtqueue_notify()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &queue->lock | ||
| HALF_LOCKED2 | &substream->runtime->buffer_mutex | ||
| HALF_LOCKED2 | &substream->self_group.lock | ||
| HALF_LOCKED2 | &substream->self_group.mutex | ||
| HALF_LOCKED2 | &vss->lock | ||
| HALF_LOCKED2 | irq |
sound/virtio/virtio_ctl_msg.c virtsnd_ctl_msg_send() -> virtqueue_notify()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |