Documented in 1 files:
Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 4 files:
- drivers/firmware/arm_scmi/transports/virtio.c
- drivers/net/can/virtio_can.c, line 97
- drivers/net/virtio_net.c
- drivers/virtio/virtio_ring.c
Smatch caller information:
drivers/virtio/virtio_ring.c virtqueue_enable_cb() -> virtqueue_enable_cb_prepare()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | _vq | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &admin_vq->lock | ||
| HALF_LOCKED2 | &data_vq->lock | ||
| HALF_LOCKED2 | &fsvq->lock | ||
| HALF_LOCKED2 | &queue->lock | ||
| HALF_LOCKED2 | &vcrypto->ctrl_lock | ||
| HALF_LOCKED2 | &vgdev->ctrlq.qlock | ||
| HALF_LOCKED2 | &vgdev->cursorq.qlock | ||
| HALF_LOCKED2 | &vioch->lock | ||
| HALF_LOCKED2 | &viortc_vq->lock | ||
| HALF_LOCKED2 | &virtscsi_vq->vq_lock | ||
| HALF_LOCKED2 | &vrp->tx_lock | ||
| HALF_LOCKED2 | &vsock->event_lock | ||
| HALF_LOCKED2 | &vsock->rx_lock | ||
| HALF_LOCKED2 | &vsock->tx_lock | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | irq |
drivers/net/can/virtio_can.c virtqueue_napi_complete() -> virtqueue_enable_cb_prepare()
| 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 |
| DATA_SOURCE | 0 | _vq | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | rcu_read |
drivers/firmware/arm_scmi/transports/virtio.c virtio_poll_done() -> virtqueue_enable_cb_prepare()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &vioch->lock | ||
| LOCK2 | flags | ||
| HALF_LOCKED2 | &cinfo->transport_info->chan_lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct scmi_vio_channel)->lock |
drivers/firmware/arm_scmi/transports/virtio.c virtio_send_message() -> virtqueue_enable_cb_prepare()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | <- disables preempt | ||
| TASK_NOT_RUNNING | |||
| LOCK2 | &vioch->lock | ||
| LOCK2 | flags | ||
| TYPE_LOCK | (struct scmi_vio_channel)->lock |
drivers/net/virtio_net.c virtnet_poll_tx() -> virtqueue_enable_cb_prepare()
| 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 | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &txq->_xmit_lock | ||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | rcu_read | ||
| TYPE_LOCK | (struct netdev_queue)->_xmit_lock |
drivers/net/virtio_net.c virtqueue_napi_complete() -> virtqueue_enable_cb_prepare()
| 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->dev->name | 0-255 |
| CAPPED_DATA | 0 | _vq->num_free | 1 |
| CAPPED_DATA | 0 | _vq->vdev->priv->dev->num_tx_queues | 1 |
| DATA_SOURCE | 0 | _vq | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | rcu_read |