Lines Matching refs:needed
529 int needed; in virtqueue_enqueue() local
532 needed = readable + writable; in virtqueue_enqueue()
535 VQASSERT(vq, needed == sg->sg_nseg, in virtqueue_enqueue()
536 "segment count mismatch, %d, %d", needed, sg->sg_nseg); in virtqueue_enqueue()
538 needed <= vq->vq_nentries || needed <= vq->vq_max_indirect_size, in virtqueue_enqueue()
539 "too many segments to enqueue: %d, %d/%d", needed, in virtqueue_enqueue()
542 if (needed < 1) in virtqueue_enqueue()
547 if (vq_ring_use_indirect(vq, needed)) { in virtqueue_enqueue()
550 } else if (vq->vq_free_cnt < needed) in virtqueue_enqueue()
560 dxp->ndescs = needed; in virtqueue_enqueue()
566 vq->vq_free_cnt -= needed; in virtqueue_enqueue()
707 int i, needed; in vq_ring_enqueue_segments() local
713 needed = readable + writable; in vq_ring_enqueue_segments()
716 i < needed; in vq_ring_enqueue_segments()
726 if (i < needed - 1) in vq_ring_enqueue_segments()
737 vq_ring_use_indirect(struct virtqueue *vq, int needed) in vq_ring_use_indirect() argument
743 if (vq->vq_max_indirect_size < needed) in vq_ring_use_indirect()
746 if (needed < 2) in vq_ring_use_indirect()
758 int needed; in vq_ring_enqueue_indirect() local
761 needed = readable + writable; in vq_ring_enqueue_indirect()
762 VQASSERT(vq, needed <= vq->vq_max_indirect_size, in vq_ring_enqueue_indirect()
776 dp->len = vq_gtoh32(vq, needed * sizeof(struct vring_desc)); in vq_ring_enqueue_indirect()