Lines Matching defs:producer
95 unsigned int consumer, producer, delta;
98 producer = ring->p_tail;
99 delta = producer + 1;
101 *size = (producer - consumer) & mask;
106 buffer = (char *)buffer + ts * (producer & mask);
140 unsigned int consumer, producer;
143 producer = ck_pr_load_uint(&ring->p_tail);
145 if (CK_CC_UNLIKELY(consumer == producer))
150 * of the producer counter.
174 unsigned int producer, consumer, delta;
177 producer = ck_pr_load_uint(&ring->p_head);
181 * The snapshot of producer must be up to date with respect to
187 delta = producer + 1;
190 * Only try to CAS if the producer is not clearly stale (not
193 if (CK_CC_LIKELY((producer - consumer) < mask)) {
195 producer, delta, &producer) == true) {
216 if (producer == new_producer) {
224 producer = new_producer;
228 buffer = (char *)buffer + ts * (producer & mask);
235 while (ck_pr_load_uint(&ring->p_tail) != producer)
239 * Ensure that copy is completed before updating shared producer
247 *size = (producer - consumer) & mask;
274 unsigned int consumer, producer;
278 producer = ck_pr_load_uint(&ring->p_tail);
280 if (CK_CC_UNLIKELY(consumer == producer))
299 unsigned int consumer, producer;
311 producer = ck_pr_load_uint(&ring->p_tail);
313 if (CK_CC_UNLIKELY(consumer == producer))
334 * to one concurrent consumer and up to one concurrent producer.
416 * consumers with up to one concurrent producer.
643 * A single producer with one concurrent consumer.
653 * A single producer with any number of concurrent consumers.