Lines Matching refs:pipe_buffer

550 	cnt = cpipe->pipe_buffer.cnt;  in pipespace_new()
560 if (cpipe->pipe_buffer.buffer == NULL && in pipespace_new()
566 if (cpipe->pipe_buffer.buffer == NULL) { in pipespace_new()
578 if (cpipe->pipe_buffer.in <= cpipe->pipe_buffer.out) { in pipespace_new()
579 firstseg = cpipe->pipe_buffer.size - cpipe->pipe_buffer.out; in pipespace_new()
580 bcopy(&cpipe->pipe_buffer.buffer[cpipe->pipe_buffer.out], in pipespace_new()
583 bcopy(cpipe->pipe_buffer.buffer, &buffer[firstseg], in pipespace_new()
584 cpipe->pipe_buffer.in); in pipespace_new()
586 bcopy(&cpipe->pipe_buffer.buffer[cpipe->pipe_buffer.out], in pipespace_new()
591 cpipe->pipe_buffer.buffer = buffer; in pipespace_new()
592 cpipe->pipe_buffer.size = size; in pipespace_new()
593 cpipe->pipe_buffer.in = cnt; in pipespace_new()
594 cpipe->pipe_buffer.out = 0; in pipespace_new()
595 cpipe->pipe_buffer.cnt = cnt; in pipespace_new()
596 atomic_add_long(&amountpipekva, cpipe->pipe_buffer.size); in pipespace_new()
714 rpipe->pipe_buffer.size > SMALL_PIPE_SIZE && in pipe_read()
715 rpipe->pipe_buffer.cnt <= SMALL_PIPE_SIZE && in pipe_read()
727 if (rpipe->pipe_buffer.cnt > 0) { in pipe_read()
728 size = rpipe->pipe_buffer.size - rpipe->pipe_buffer.out; in pipe_read()
729 if (size > rpipe->pipe_buffer.cnt) in pipe_read()
730 size = rpipe->pipe_buffer.cnt; in pipe_read()
736 &rpipe->pipe_buffer.buffer[rpipe->pipe_buffer.out], in pipe_read()
742 rpipe->pipe_buffer.out += size; in pipe_read()
743 if (rpipe->pipe_buffer.out >= rpipe->pipe_buffer.size) in pipe_read()
744 rpipe->pipe_buffer.out = 0; in pipe_read()
746 rpipe->pipe_buffer.cnt -= size; in pipe_read()
753 if (rpipe->pipe_buffer.cnt == 0) { in pipe_read()
754 rpipe->pipe_buffer.in = 0; in pipe_read()
755 rpipe->pipe_buffer.out = 0; in pipe_read()
842 } else if (rpipe->pipe_buffer.cnt < MINPIPESIZE) { in pipe_read()
857 rpipe->pipe_buffer.size - rpipe->pipe_buffer.cnt >= PIPE_BUF) in pipe_read()
883 if (uio->uio_iov->iov_len > wpipe->pipe_buffer.size) in pipe_build_write_buffer()
884 size = wpipe->pipe_buffer.size; in pipe_build_write_buffer()
952 wpipe->pipe_buffer.in = size; in pipe_clone_write_buffer()
953 wpipe->pipe_buffer.out = 0; in pipe_clone_write_buffer()
954 wpipe->pipe_buffer.cnt = size; in pipe_clone_write_buffer()
957 iov.iov_base = wpipe->pipe_buffer.buffer; in pipe_clone_write_buffer()
1004 if (wpipe->pipe_buffer.cnt > 0) { in pipe_direct_write()
1097 desiredsize = max(SMALL_PIPE_SIZE, wpipe->pipe_buffer.size); in pipe_write()
1098 while (desiredsize < wpipe->pipe_buffer.cnt + uio->uio_resid) { in pipe_write()
1110 wpipe->pipe_buffer.size > SMALL_PIPE_SIZE && in pipe_write()
1111 wpipe->pipe_buffer.cnt <= SMALL_PIPE_SIZE && in pipe_write()
1116 if (desiredsize != wpipe->pipe_buffer.size && in pipe_write()
1122 MPASS(wpipe->pipe_buffer.size != 0); in pipe_write()
1145 wpipe->pipe_buffer.size >= PIPE_MINDIRECT && in pipe_write()
1177 space = wpipe->pipe_buffer.size - wpipe->pipe_buffer.cnt; in pipe_write()
1202 segsize = wpipe->pipe_buffer.size - in pipe_write()
1203 wpipe->pipe_buffer.in; in pipe_write()
1210 error = uiomove(&wpipe->pipe_buffer.buffer[wpipe->pipe_buffer.in], in pipe_write()
1215 KASSERT(wpipe->pipe_buffer.in + segsize == in pipe_write()
1216 wpipe->pipe_buffer.size, in pipe_write()
1226 &wpipe->pipe_buffer.buffer[0], in pipe_write()
1231 wpipe->pipe_buffer.in += size; in pipe_write()
1232 if (wpipe->pipe_buffer.in >= in pipe_write()
1233 wpipe->pipe_buffer.size) { in pipe_write()
1234 KASSERT(wpipe->pipe_buffer.in == in pipe_write()
1236 wpipe->pipe_buffer.size, in pipe_write()
1238 wpipe->pipe_buffer.in = size - segsize; in pipe_write()
1241 wpipe->pipe_buffer.cnt += size; in pipe_write()
1242 KASSERT(wpipe->pipe_buffer.cnt <= in pipe_write()
1243 wpipe->pipe_buffer.size, in pipe_write()
1288 } else if (wpipe->pipe_buffer.cnt > 0) { in pipe_write()
1315 if (wpipe->pipe_buffer.cnt) in pipe_write()
1383 *(int *)data = mpipe->pipe_buffer.cnt; in pipe_ioctl()
1436 if (rpipe->pipe_pages.cnt > 0 || rpipe->pipe_buffer.cnt > 0) in pipe_poll()
1443 ((wpipe->pipe_buffer.size - wpipe->pipe_buffer.cnt) >= PIPE_BUF || in pipe_poll()
1444 wpipe->pipe_buffer.size == 0))) in pipe_poll()
1525 ub->st_size = pipe->pipe_buffer.cnt; in pipe_stat()
1593 kif->kf_un.kf_pipe.kf_pipe_buffer_cnt = pi->pipe_buffer.cnt; in pipe_fill_kinfo()
1604 if (cpipe->pipe_buffer.buffer != NULL) { in pipe_free_kmem()
1605 atomic_subtract_long(&amountpipekva, cpipe->pipe_buffer.size); in pipe_free_kmem()
1607 (vm_offset_t)cpipe->pipe_buffer.buffer, in pipe_free_kmem()
1608 (vm_offset_t)cpipe->pipe_buffer.buffer + cpipe->pipe_buffer.size); in pipe_free_kmem()
1609 cpipe->pipe_buffer.buffer = NULL; in pipe_free_kmem()
1759 kn->kn_data = rpipe->pipe_buffer.cnt; in filt_piperead()
1789 } else if (wpipe->pipe_buffer.size > 0) { in filt_pipewrite()
1790 kn->kn_data = wpipe->pipe_buffer.size - in filt_pipewrite()
1791 wpipe->pipe_buffer.cnt; in filt_pipewrite()