Searched refs:vring (Results 1 – 9 of 9) sorted by relevance
/qemu/hw/virtio/ |
H A D | vhost-shadow-virtqueue.c | 162 vring_desc_t *descs = svq->vring.desc; in vhost_svq_vring_write_descs() 199 vring_avail_t *avail = svq->vring.avail; in vhost_svq_add_split() 228 avail_idx = svq->shadow_avail_idx & (svq->vring.num - 1); in vhost_svq_add_split() 251 *(uint16_t *)(&svq->vring.used->ring[svq->vring.num])); in vhost_svq_kick() 255 !(svq->vring.used->flags & cpu_to_le16(VRING_USED_F_NO_NOTIFY)); in vhost_svq_kick() 386 uint16_t *used_idx = &svq->vring.used->idx; in vhost_svq_more_used() 408 uint16_t *used_event = (uint16_t *)&svq->vring.avail->ring[svq->vring.num]; in vhost_svq_enable_notification() 411 svq->vring.avail->flags &= ~cpu_to_le16(VRING_AVAIL_F_NO_INTERRUPT); in vhost_svq_enable_notification() 426 svq->vring.avail->flags |= cpu_to_le16(VRING_AVAIL_F_NO_INTERRUPT); in vhost_svq_disable_notification() 444 const vring_used_t *used = svq->vring.used; in vhost_svq_get_buf() [all …]
|
H A D | virtio.c | 122 VRing vring; member 231 caches = qatomic_read(&vq->vring.caches); in virtio_virtqueue_reset_region_cache() 232 qatomic_rcu_set(&vq->vring.caches, NULL); in virtio_virtqueue_reset_region_cache() 241 VRingMemoryRegionCaches *old = vq->vring.caches; in virtio_init_region_cache() 248 addr = vq->vring.desc; in virtio_init_region_cache() 265 vq->vring.used, size, true); in virtio_init_region_cache() 273 vq->vring.avail, size, false); in virtio_init_region_cache() 279 qatomic_rcu_set(&vq->vring.caches, new); in virtio_init_region_cache() 299 VRing *vring = &vdev->vq[n].vring; in virtio_queue_update_rings() local 301 if (!vring->num || !vring->desc || !vring->align) { in virtio_queue_update_rings() [all …]
|
H A D | vhost-shadow-virtqueue.h | 52 struct vring vring; member
|
/qemu/subprojects/libvduse/ |
H A D | libvduse.c | 97 VduseRing vring; member 233 vq->used_idx = le16toh(vq->vring.used->idx); in vduse_queue_check_inflights() 426 return le16toh(vq->vring.avail->flags); in vring_avail_flags() 431 vq->shadow_avail_idx = le16toh(vq->vring.avail->idx); in vring_avail_idx() 438 return le16toh(vq->vring.avail->ring[i]); in vring_avail_ring() 443 return vring_avail_ring(vq, vq->vring.num); in vring_get_used_event() 453 *head = vring_avail_ring(vq, idx % vq->vring.num); in vduse_queue_get_head() 456 if (*head >= vq->vring.num) { in vduse_queue_get_head() 528 if (unlikely(!vq->vring.avail)) { in vduse_queue_empty() 569 if (unlikely(!vq->vring.avail)) { in vduse_queue_notify() [all …]
|
/qemu/qapi/ |
H A D | virtio.json | 512 # @vring-num: VirtQueue vring.num 514 # @vring-num-default: VirtQueue vring.num_default 516 # @vring-align: VirtQueue vring.align 518 # @vring-desc: VirtQueue vring.desc (descriptor area) 520 # @vring-avail: VirtQueue vring.avail (driver area) 522 # @vring-used: VirtQueue vring.used (device area) 541 'vring-num': 'uint32', 542 'vring-num-default': 'uint32', 543 'vring-align': 'uint32', 544 'vring-desc': 'uint64', [all …]
|
/qemu/subprojects/libvhost-user/ |
H A D | libvhost-user.c | 289 vq->vring.desc = qva_to_va(dev, vq->vra.desc_user_addr); in map_ring() 290 vq->vring.used = qva_to_va(dev, vq->vra.used_user_addr); in map_ring() 291 vq->vring.avail = qva_to_va(dev, vq->vra.avail_user_addr); in map_ring() 294 DPRINT(" vring_desc at %p\n", vq->vring.desc); in map_ring() 295 DPRINT(" vring_used at %p\n", vq->vring.used); in map_ring() 296 DPRINT(" vring_avail at %p\n", vq->vring.avail); in map_ring() 298 return !(vq->vring.desc && vq->vring.used && vq->vring.avail); in map_ring() 308 if (likely(vq->vring.avail)) { in vu_is_vq_usable() 336 const uintptr_t desc = (uintptr_t)vq->vring.desc; in unmap_rings() 337 const uintptr_t used = (uintptr_t)vq->vring.used; in unmap_rings() [all …]
|
H A D | libvhost-user.h | 335 VuRing vring; member
|
/qemu/docs/interop/ |
H A D | vhost-user.rst | 100 A vring state description 111 A vring descriptor index for split virtqueues 115 | vring index | index in avail ring | 118 :vring index: 32-bit index of the respective virtqueue 132 | vring index | descriptor indices | 135 :vring index: 32-bit index of the respective virtqueue 148 A vring address description 155 :index: a 32-bit vring index 157 :flags: a 32-bit vring flags 159 :descriptor: a 64-bit ring address of the vring descriptor table [all …]
|
/qemu/include/standard-headers/linux/ |
H A D | virtio_ring.h | 156 struct vring { struct 197 static inline void vring_init(struct vring *vr, unsigned int num, void *p, in vring_init()
|