Lines Matching defs:ring

2 /* XDP user-space ring structure
43 struct xdp_ring *ring;
49 * ring buffer in kernel/events/ring_buffer.c. For the Rx and completion
50 * ring, the kernel is the producer and user space is the consumer. For
87 * now and again after circling through the ring.
94 * RESERVE entries PEEK in the ring for entries
95 * WRITE data into the ring READ data from the ring
98 * The producer reserves one or more entries in the ring. It can then
102 * The consumer peeks into the ring to see if the producer has written
114 struct xdp_umem_ring *ring = (struct xdp_umem_ring *)q->ring;
119 *addr = ring->desc[idx];
190 struct xdp_rxtx_ring *ring = (struct xdp_rxtx_ring *)q->ring;
193 *desc = ring->desc[idx];
208 WRITE_ONCE(q->ring->consumer, q->cached_cons);
214 q->cached_prod = READ_ONCE(q->ring->producer);
257 * from the ring in xskq_cons_get_entries() and whenever
266 return READ_ONCE(q->ring->producer) - READ_ONCE(q->ring->consumer) ==
273 return READ_ONCE(q->ring->producer) - READ_ONCE(q->ring->consumer);
286 q->cached_cons = READ_ONCE(q->ring->consumer);
309 struct xdp_umem_ring *ring = (struct xdp_umem_ring *)q->ring;
315 ring->desc[q->cached_prod++ & q->ring_mask] = addr;
322 struct xdp_rxtx_ring *ring = (struct xdp_rxtx_ring *)q->ring;
330 ring->desc[idx].addr = addr;
331 ring->desc[idx].len = len;
340 WRITE_ONCE(q->ring->producer, idx);
350 struct xdp_umem_ring *ring = (struct xdp_umem_ring *)q->ring;
351 u32 idx = q->ring->producer;
353 ring->desc[idx++ & q->ring_mask] = addr;
360 __xskq_prod_submit(q, q->ring->producer + nb_entries);
366 return READ_ONCE(q->ring->consumer) == READ_ONCE(q->ring->producer);