Lines Matching refs:tail
166 UInt32 tail; in enqueue() local
179 tail = __c11_atomic_load((_Atomic UInt32 *)&dataQueue->tail, __ATOMIC_RELAXED); in enqueue()
184 if ((queueSize < tail) || (queueSize < head)) { in enqueue()
188 if (tail >= head) { in enqueue()
190 if ((entrySize <= UINT32_MAX - tail) && in enqueue()
191 ((tail + entrySize) <= queueSize)) { in enqueue()
192 entry = (IODataQueueEntry *)((UInt8 *)dataQueue->queue + tail); in enqueue()
201 newTail = tail + entrySize; in enqueue()
212 if ((queueSize - tail) >= DATA_QUEUE_ENTRY_HEADER_SIZE) { in enqueue()
213 ((IODataQueueEntry *)((UInt8 *)dataQueue->queue + tail))->size = dataSize; in enqueue()
225 if ((head - tail) > entrySize) { in enqueue()
226 entry = (IODataQueueEntry *)((UInt8 *)dataQueue->queue + tail); in enqueue()
230 newTail = tail + entrySize; in enqueue()
237 __c11_atomic_store((_Atomic UInt32 *)&dataQueue->tail, newTail, __ATOMIC_RELEASE); in enqueue()
239 if (tail != head) { in enqueue()
253 if (tail == head) { in enqueue()