vq_gtoh16
if ((dp->flags & vq_gtoh16(vq, VRING_DESC_F_INDIRECT)) == 0) {
while (dp->flags & vq_gtoh16(vq, VRING_DESC_F_NEXT)) {
dp->next = vq_gtoh16(vq, vq->vq_desc_head_idx);
indirect[i].next = vq_gtoh16(vq, i + 1);
indirect[i].next = vq_gtoh16(vq, VQ_RING_DESC_CHAIN_END);
vring_used_event(&vq->vq_ring) = vq_gtoh16(vq,
vq->vq_ring.avail->flags |= vq_gtoh16(vq, VRING_AVAIL_F_NO_INTERRUPT);
vr->desc[i].next = vq_gtoh16(vq, i + 1);
vr->desc[i].next = vq_gtoh16(vq, VQ_RING_DESC_CHAIN_END);
vq->vq_ring.avail->ring[avail_ring_idx] = vq_gtoh16(vq, desc_idx);
vq->vq_ring.avail->idx = vq_gtoh16(vq, avail_idx + 1);
dp->flags |= vq_gtoh16(vq, VRING_DESC_F_NEXT);
dp->flags |= vq_gtoh16(vq, VRING_DESC_F_WRITE);
dp->flags = vq_gtoh16(vq, VRING_DESC_F_INDIRECT);
vq_gtoh16(vq, vq->vq_used_cons_idx + ndesc);
vq_gtoh16(vq, ~VRING_AVAIL_F_NO_INTERRUPT);
return ((flags & vq_gtoh16(vq, VRING_USED_F_NO_NOTIFY)) == 0);