Lines Matching defs:ring
806 /* compute current ring to use */
807 struct netmap_ring *ring;
813 ring = NETMAP_TXRING(d->nifp, ri);
815 j = ring->cur;
816 while (rem > ring->nr_buf_size && j != ring->tail) {
817 rem -= ring->nr_buf_size;
818 j = nm_ring_next(ring, j);
820 if (j == ring->tail && rem > 0)
822 i = ring->cur;
824 idx = ring->slot[i].buf_idx;
825 ring->slot[i].len = ring->nr_buf_size;
826 ring->slot[i].flags = NS_MOREFRAG;
827 nm_pkt_copy(buf, NETMAP_BUF(ring, idx), ring->nr_buf_size);
828 i = nm_ring_next(ring, i);
829 buf = (char *)buf + ring->nr_buf_size;
831 idx = ring->slot[i].buf_idx;
832 ring->slot[i].len = rem;
833 ring->slot[i].flags = 0;
834 nm_pkt_copy(buf, NETMAP_BUF(ring, idx), rem);
835 ring->head = ring->cur = nm_ring_next(ring, i);