Lines Matching refs:last_avail_idx

103     uint16_t last_avail_idx;  member
599 if (vq->shadow_avail_idx != vq->last_avail_idx) { in virtio_queue_empty_rcu()
603 return vring_avail_idx(vq) == vq->last_avail_idx; in virtio_queue_empty_rcu()
618 if (vq->shadow_avail_idx != vq->last_avail_idx) { in virtio_queue_split_empty()
623 empty = vring_avail_idx(vq) == vq->last_avail_idx; in virtio_queue_split_empty()
643 vq->last_avail_idx); in virtio_queue_packed_empty_rcu()
706 vq->last_avail_idx -= num; in virtqueue_split_rewind()
711 if (vq->last_avail_idx < num) { in virtqueue_packed_rewind()
712 vq->last_avail_idx = vq->vring.num + vq->last_avail_idx - num; in virtqueue_packed_rewind()
715 vq->last_avail_idx -= num; in virtqueue_packed_rewind()
992 idx = vq->last_avail_idx; in virtqueue_split_get_avail_bytes()
1131 idx = vq->last_avail_idx; in virtqueue_packed_get_avail_bytes()
1432 if (!virtqueue_get_head(vq, vq->last_avail_idx++, &head)) { in virtqueue_split_pop()
1437 vring_set_avail_event(vq, vq->last_avail_idx); in virtqueue_split_pop()
1567 i = vq->last_avail_idx; in virtqueue_packed_pop()
1649 vq->last_avail_idx += elem->ndescs; in virtqueue_packed_pop()
1652 if (vq->last_avail_idx >= vq->vring.num) { in virtqueue_packed_pop()
1653 vq->last_avail_idx -= vq->vring.num; in virtqueue_packed_pop()
1657 vq->shadow_avail_idx = vq->last_avail_idx; in virtqueue_packed_pop()
1705 unsigned int idx = vq->last_avail_idx; in virtqueue_packed_drop_all()
1711 vq->last_avail_idx , true); in virtqueue_packed_drop_all()
1727 vq->last_avail_idx += elem.ndescs; in virtqueue_packed_drop_all()
1728 if (vq->last_avail_idx >= vq->vring.num) { in virtqueue_packed_drop_all()
1729 vq->last_avail_idx -= vq->vring.num; in virtqueue_packed_drop_all()
1748 if (!virtqueue_get_head(vq, vq->last_avail_idx, &elem.index)) { in virtqueue_split_drop_all()
1752 vq->last_avail_idx++; in virtqueue_split_drop_all()
1754 vring_set_avail_event(vq, vq->last_avail_idx); in virtqueue_split_drop_all()
2004 vdev->vq[i].last_avail_idx = 0; in virtio_reset()
2665 VMSTATE_UINT16(last_avail_idx, struct VirtQueue),
2886 qemu_put_be16s(f, &vdev->vq[i].last_avail_idx); in virtio_save()
3054 qemu_get_be16s(f, &vdev->vq[i].last_avail_idx); in virtio_load()
3058 if (!vdev->vq[i].vring.desc && vdev->vq[i].last_avail_idx) { in virtio_load()
3061 i, vdev->vq[i].last_avail_idx); in virtio_load()
3142 vdev->vq[i].shadow_avail_idx = vdev->vq[i].last_avail_idx; in virtio_load()
3148 nheads = vring_avail_idx(&vdev->vq[i]) - vdev->vq[i].last_avail_idx; in virtio_load()
3155 vdev->vq[i].last_avail_idx, nheads); in virtio_load()
3170 vdev->vq[i].inuse = (uint16_t)(vdev->vq[i].last_avail_idx - in virtio_load()
3176 vdev->vq[i].last_avail_idx, in virtio_load()
3369 avail = vdev->vq[n].last_avail_idx; in virtio_queue_packed_get_last_avail_idx()
3381 return vdev->vq[n].last_avail_idx; in virtio_queue_split_get_last_avail_idx()
3398 vq->last_avail_idx = vq->shadow_avail_idx = idx & 0x7fff; in virtio_queue_packed_set_last_avail_idx()
3409 vdev->vq[n].last_avail_idx = idx; in virtio_queue_split_set_last_avail_idx()
3435 vdev->vq[n].last_avail_idx = vring_used_idx(&vdev->vq[n]); in virtio_queue_split_restore_last_avail_idx()
3436 vdev->vq[n].shadow_avail_idx = vdev->vq[n].last_avail_idx; in virtio_queue_split_restore_last_avail_idx()