Lines Matching refs:tail
208 unsigned int tail = READ_ONCE(pipe->tail); in pipe_readable() local
211 return !pipe_empty(head, tail) || !writers; in pipe_readable()
238 was_full = pipe_full(pipe->head, pipe->tail, pipe->max_usage); in pipe_read()
241 unsigned int tail = pipe->tail; in pipe_read() local
268 if (!pipe_empty(head, tail)) { in pipe_read()
269 struct pipe_buffer *buf = &pipe->bufs[tail & mask]; in pipe_read()
313 tail++; in pipe_read()
314 pipe->tail = tail; in pipe_read()
320 if (!pipe_empty(head, tail)) /* More to do? */ in pipe_read()
366 was_full = pipe_full(pipe->head, pipe->tail, pipe->max_usage); in pipe_read()
369 if (pipe_empty(pipe->head, pipe->tail)) in pipe_read()
393 unsigned int tail = READ_ONCE(pipe->tail); in pipe_writable() local
396 return !pipe_full(head, tail, max_usage) || in pipe_writable()
443 was_empty = pipe_empty(head, pipe->tail); in pipe_write()
477 if (!pipe_full(head, pipe->tail, pipe->max_usage)) { in pipe_write()
500 if (pipe_full(head, pipe->tail, pipe->max_usage)) { in pipe_write()
534 if (!pipe_full(head, pipe->tail, pipe->max_usage)) in pipe_write()
562 was_empty = pipe_empty(pipe->head, pipe->tail); in pipe_write()
566 if (pipe_full(pipe->head, pipe->tail, pipe->max_usage)) in pipe_write()
597 int count, head, tail, mask; in pipe_ioctl() local
604 tail = pipe->tail; in pipe_ioctl()
607 while (tail != head) { in pipe_ioctl()
608 count += pipe->bufs[tail & mask].len; in pipe_ioctl()
609 tail++; in pipe_ioctl()
640 unsigned int head, tail; in pipe_poll() local
659 tail = READ_ONCE(pipe->tail); in pipe_poll()
663 if (!pipe_empty(head, tail)) in pipe_poll()
670 if (!pipe_full(head, tail, pipe->max_usage)) in pipe_poll()
1233 unsigned int head, tail, mask, n; in pipe_resize_ring() local
1243 tail = pipe->tail; in pipe_resize_ring()
1244 n = pipe_occupancy(pipe->head, pipe->tail); in pipe_resize_ring()
1259 unsigned int t = tail & mask; in pipe_resize_ring()
1274 tail = 0; in pipe_resize_ring()
1281 pipe->tail = tail; in pipe_resize_ring()