Lines Matching defs:queue
38 int size ____cacheline_aligned_in_smp; /* max entries in queue */
40 void **queue;
51 return r->queue[r->producer];
106 if (unlikely(!r->size) || r->queue[r->producer])
113 WRITE_ONCE(r->queue[r->producer++], ptr);
172 return READ_ONCE(r->queue[r->consumer_head]);
197 return !r->queue[READ_ONCE(r->consumer_head)];
253 * r->queue[consumer++] = NULL;
280 r->queue[head--] = NULL;
477 r->batch = SMP_CACHE_BYTES * 2 / sizeof(*(r->queue));
489 r->queue = __ptr_ring_init_queue_alloc(size, gfp);
490 if (!r->queue)
529 r->queue[head--] = NULL;
540 if (r->queue[head]) {
544 r->queue[head] = batch[--n];
558 static inline void **__ptr_ring_swap_queue(struct ptr_ring *r, void **queue,
568 queue[producer++] = ptr;
578 old = r->queue;
579 r->queue = queue;
594 void **queue = __ptr_ring_init_queue_alloc(size, gfp);
597 if (!queue)
603 old = __ptr_ring_swap_queue(r, queue, size, gfp, destroy);
671 kvfree(r->queue);