Lines Matching refs:supply
43 * full: [consume, supply)
44 * empty: [supply, consume)
71 #define ring_empty(d) (((d)->consume == (d)->supply) && \
73 #define ring_full(d) (((d)->supply == (d)->consume) && \
89 ring->supply = ring->consume = ring->bottom = buffer;
109 ring->mark = ring_decrement(ring, ring->supply, 1);
142 ring->supply = ring_increment(ring, ring->supply, count);
174 ring->consume = ring->supply = ring->bottom;
190 return ring_subtract(ring, ring->consume, ring->supply);
198 if ((ring->consume < ring->supply) || ring_empty(ring)) {
200 * if consume is "below" supply, or empty, then
203 return ring_subtract(ring, ring->top, ring->supply);
208 return ring_subtract(ring, ring->consume, ring->supply);
223 return ring_subtract(ring, ring->supply, ring->consume);
238 if ((ring->supply < ring->consume) || ring_full(ring)) {
241 return ring_subtract(ring, ring->supply, ring->consume);
253 * Move data into the "supply" portion of of the ring buffer.
262 memmove(ring->supply, buffer, i);
295 if (ring_empty(ring) || ring->clearto == ring->supply)
301 s = ring->supply;
309 ring->clearto = ring->supply;
316 ring->clearto = ring->supply;