Lines Matching refs:tail
104 f->tail = 0; in msnd_fifo_alloc()
116 f->len = f->tail = f->head = 0; in msnd_fifo_make_empty()
127 if (f->head <= f->tail) { in msnd_fifo_write_io()
129 if (nwritten > f->n - f->tail) in msnd_fifo_write_io()
130 nwritten = f->n - f->tail; in msnd_fifo_write_io()
133 nwritten = f->head - f->tail; in msnd_fifo_write_io()
138 memcpy_fromio(f->data + f->tail, buf, nwritten); in msnd_fifo_write_io()
143 f->tail += nwritten; in msnd_fifo_write_io()
144 f->tail %= f->n; in msnd_fifo_write_io()
158 if (f->head <= f->tail) { in msnd_fifo_write()
160 if (nwritten > f->n - f->tail) in msnd_fifo_write()
161 nwritten = f->n - f->tail; in msnd_fifo_write()
164 nwritten = f->head - f->tail; in msnd_fifo_write()
169 memcpy(f->data + f->tail, buf, nwritten); in msnd_fifo_write()
174 f->tail += nwritten; in msnd_fifo_write()
175 f->tail %= f->n; in msnd_fifo_write()
189 if (f->tail <= f->head) { in msnd_fifo_read_io()
195 nread = f->tail - f->head; in msnd_fifo_read_io()
220 if (f->tail <= f->head) { in msnd_fifo_read()
226 nread = f->tail - f->head; in msnd_fifo_read()