Lines Matching refs:head
48 mpsc_queue_chain_t head = os_atomic_load(&q->mpqh_head.mpqc_next, relaxed); in mpsc_queue_restore_batch() local
50 os_atomic_store(&last->mpqc_next, head, relaxed); in mpsc_queue_restore_batch()
52 if (head == NULL && in mpsc_queue_restore_batch()
54 head = os_atomic_load(&q->mpqh_head.mpqc_next, relaxed); in mpsc_queue_restore_batch()
55 if (__improbable(head == NULL)) { in mpsc_queue_restore_batch()
56 head = _mpsc_queue_wait_for_enqueuer(&q->mpqh_head.mpqc_next); in mpsc_queue_restore_batch()
58 os_atomic_store(&last->mpqc_next, head, relaxed); in mpsc_queue_restore_batch()
68 mpsc_queue_chain_t head, tail; in mpsc_queue_dequeue_batch() local
78 head = os_atomic_load(&q->mpqh_head.mpqc_next, relaxed); in mpsc_queue_dequeue_batch()
79 if (__improbable(head == NULL)) { in mpsc_queue_dequeue_batch()
80 head = _mpsc_queue_wait_for_enqueuer(&q->mpqh_head.mpqc_next); in mpsc_queue_dequeue_batch()
100 return head; in mpsc_queue_dequeue_batch()
267 mpsc_queue_chain_t head, cur, tail; in _mpsc_daemon_queue_drain() local
295 if ((head = mpsc_queue_dequeue_batch(&dq->mpd_queue, &tail, dep))) { in _mpsc_daemon_queue_drain()
297 mpsc_queue_batch_foreach_safe(cur, head, tail) { in _mpsc_daemon_queue_drain()
302 } while ((head = mpsc_queue_dequeue_batch(&dq->mpd_queue, &tail, dep))); in _mpsc_daemon_queue_drain()