Defined in 1 files as a function:

Referenced in 4 files:

Smatch caller information:

drivers/vhost/vhost.c vhost_notify() -> vring_need_event()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 event_idx 0-u16max
HOST_DATA 2 old 0-u16max
HALF_LOCKED2 &vq->mutex

drivers/virtio/virtio_ring.c virtqueue_kick_prepare_packed() -> vring_need_event()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
UNITS 1 new_idx unit_array_size
HALF_LOCKED2 &(plane->dev)->mode_config.panic_lock
HALF_LOCKED2 &alarm_viortc_vq->lock
HALF_LOCKED2 &fsvq->lock
HALF_LOCKED2 &queue->lock
HALF_LOCKED2 &txq->_xmit_lock
HALF_LOCKED2 &vgdev->ctrlq.qlock
HALF_LOCKED2 &vgdev->cursorq.qlock
HALF_LOCKED2 &viortc_vq->lock
HALF_LOCKED2 &vq->lock
HALF_LOCKED2 &vq->vq_lock
HALF_LOCKED2 flags
HALF_LOCKED2 global &drm_unplug_srcu
HALF_LOCKED2 irq

drivers/virtio/virtio_ring.c virtqueue_kick_prepare_split() -> vring_need_event()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 event_idx 0-u16max
UNITS 1 new_idx unit_array_size
HALF_LOCKED2 &(plane->dev)->mode_config.panic_lock
HALF_LOCKED2 &alarm_viortc_vq->lock
HALF_LOCKED2 &fsvq->lock
HALF_LOCKED2 &queue->lock
HALF_LOCKED2 &txq->_xmit_lock
HALF_LOCKED2 &vgdev->ctrlq.qlock
HALF_LOCKED2 &vgdev->cursorq.qlock
HALF_LOCKED2 &viortc_vq->lock
HALF_LOCKED2 &vq->lock
HALF_LOCKED2 &vq->vq_lock
HALF_LOCKED2 flags
HALF_LOCKED2 global &drm_unplug_srcu
HALF_LOCKED2 irq

drivers/vhost/vringh.c __vringh_need_notify() -> vring_need_event()

Type Parameter Key Value
PREEMPT_ADD
HOST_DATA 0 event_idx 0-u16max
USER_DATA 0 event_idx 0-u16max
UNITS 2 old unit_array_size