Lines Matching refs:supply
47 * full: [consume, supply)
48 * empty: [supply, consume)
96 #define ring_empty(d) (((d)->consume == (d)->supply) && \
98 #define ring_full(d) (((d)->supply == (d)->consume) && \
110 ring->supply = ring->consume = ring->bottom = buffer;
130 ring->mark = ring_decrement(ring, ring->supply, 1);
163 ring->supply = ring_increment(ring, ring->supply, count);
195 ring->consume = ring->supply = ring->bottom;
211 return ring_subtract(ring, ring->consume, ring->supply);
219 if ((ring->consume < ring->supply) || ring_empty(ring)) {
221 * if consume is "below" supply, or empty, then
224 return ring_subtract(ring, ring->top, ring->supply);
229 return ring_subtract(ring, ring->consume, ring->supply);
244 return ring_subtract(ring, ring->supply, ring->consume);
259 if ((ring->supply < ring->consume) || ring_full(ring)) {
262 return ring_subtract(ring, ring->supply, ring->consume);
274 * Move data into the "supply" portion of of the ring buffer.
283 memcpy(ring->supply, buffer, i);
296 if (ring_empty(ring) || ring->clearto == ring->supply)
302 s = ring->supply;
310 ring->clearto = ring->supply;
318 ring->clearto = ring->supply;