Lines Matching refs:pipe_buffer
536 cnt = cpipe->pipe_buffer.cnt; in pipespace_new()
546 if (cpipe->pipe_buffer.buffer == NULL && in pipespace_new()
552 if (cpipe->pipe_buffer.buffer == NULL) { in pipespace_new()
564 if (cpipe->pipe_buffer.in <= cpipe->pipe_buffer.out) { in pipespace_new()
565 firstseg = cpipe->pipe_buffer.size - cpipe->pipe_buffer.out; in pipespace_new()
566 bcopy(&cpipe->pipe_buffer.buffer[cpipe->pipe_buffer.out], in pipespace_new()
569 bcopy(cpipe->pipe_buffer.buffer, &buffer[firstseg], in pipespace_new()
570 cpipe->pipe_buffer.in); in pipespace_new()
572 bcopy(&cpipe->pipe_buffer.buffer[cpipe->pipe_buffer.out], in pipespace_new()
577 cpipe->pipe_buffer.buffer = buffer; in pipespace_new()
578 cpipe->pipe_buffer.size = size; in pipespace_new()
579 cpipe->pipe_buffer.in = cnt; in pipespace_new()
580 cpipe->pipe_buffer.out = 0; in pipespace_new()
581 cpipe->pipe_buffer.cnt = cnt; in pipespace_new()
582 atomic_add_long(&amountpipekva, cpipe->pipe_buffer.size); in pipespace_new()
691 rpipe->pipe_buffer.size > SMALL_PIPE_SIZE && in pipe_read()
692 rpipe->pipe_buffer.cnt <= SMALL_PIPE_SIZE && in pipe_read()
704 if (rpipe->pipe_buffer.cnt > 0) { in pipe_read()
705 size = rpipe->pipe_buffer.size - rpipe->pipe_buffer.out; in pipe_read()
706 if (size > rpipe->pipe_buffer.cnt) in pipe_read()
707 size = rpipe->pipe_buffer.cnt; in pipe_read()
713 &rpipe->pipe_buffer.buffer[rpipe->pipe_buffer.out], in pipe_read()
719 rpipe->pipe_buffer.out += size; in pipe_read()
720 if (rpipe->pipe_buffer.out >= rpipe->pipe_buffer.size) in pipe_read()
721 rpipe->pipe_buffer.out = 0; in pipe_read()
723 rpipe->pipe_buffer.cnt -= size; in pipe_read()
730 if (rpipe->pipe_buffer.cnt == 0) { in pipe_read()
731 rpipe->pipe_buffer.in = 0; in pipe_read()
732 rpipe->pipe_buffer.out = 0; in pipe_read()
819 } else if (rpipe->pipe_buffer.cnt < MINPIPESIZE) { in pipe_read()
834 rpipe->pipe_buffer.size - rpipe->pipe_buffer.cnt >= PIPE_BUF) in pipe_read()
858 if (uio->uio_iov->iov_len > wpipe->pipe_buffer.size) in pipe_build_write_buffer()
859 size = wpipe->pipe_buffer.size; in pipe_build_write_buffer()
927 wpipe->pipe_buffer.in = size; in pipe_clone_write_buffer()
928 wpipe->pipe_buffer.out = 0; in pipe_clone_write_buffer()
929 wpipe->pipe_buffer.cnt = size; in pipe_clone_write_buffer()
932 iov.iov_base = wpipe->pipe_buffer.buffer; in pipe_clone_write_buffer()
983 if (wpipe->pipe_buffer.cnt > 0) { in pipe_direct_write()
1078 desiredsize = max(SMALL_PIPE_SIZE, wpipe->pipe_buffer.size); in pipe_write()
1079 while (desiredsize < wpipe->pipe_buffer.cnt + uio->uio_resid) { in pipe_write()
1091 wpipe->pipe_buffer.size > SMALL_PIPE_SIZE && in pipe_write()
1092 wpipe->pipe_buffer.cnt <= SMALL_PIPE_SIZE && in pipe_write()
1097 if (desiredsize != wpipe->pipe_buffer.size && in pipe_write()
1103 MPASS(wpipe->pipe_buffer.size != 0); in pipe_write()
1130 wpipe->pipe_buffer.size >= PIPE_MINDIRECT && in pipe_write()
1163 space = wpipe->pipe_buffer.size - wpipe->pipe_buffer.cnt; in pipe_write()
1188 segsize = wpipe->pipe_buffer.size - in pipe_write()
1189 wpipe->pipe_buffer.in; in pipe_write()
1196 error = uiomove(&wpipe->pipe_buffer.buffer[wpipe->pipe_buffer.in], in pipe_write()
1201 KASSERT(wpipe->pipe_buffer.in + segsize == in pipe_write()
1202 wpipe->pipe_buffer.size, in pipe_write()
1212 &wpipe->pipe_buffer.buffer[0], in pipe_write()
1217 wpipe->pipe_buffer.in += size; in pipe_write()
1218 if (wpipe->pipe_buffer.in >= in pipe_write()
1219 wpipe->pipe_buffer.size) { in pipe_write()
1220 KASSERT(wpipe->pipe_buffer.in == in pipe_write()
1222 wpipe->pipe_buffer.size, in pipe_write()
1224 wpipe->pipe_buffer.in = size - segsize; in pipe_write()
1227 wpipe->pipe_buffer.cnt += size; in pipe_write()
1228 KASSERT(wpipe->pipe_buffer.cnt <= in pipe_write()
1229 wpipe->pipe_buffer.size, in pipe_write()
1274 } else if (wpipe->pipe_buffer.cnt > 0) { in pipe_write()
1301 if (wpipe->pipe_buffer.cnt) in pipe_write()
1368 *(int *)data = mpipe->pipe_buffer.cnt; in pipe_ioctl()
1421 if (rpipe->pipe_pages.cnt > 0 || rpipe->pipe_buffer.cnt > 0) in pipe_poll()
1428 ((wpipe->pipe_buffer.size - wpipe->pipe_buffer.cnt) >= PIPE_BUF || in pipe_poll()
1429 wpipe->pipe_buffer.size == 0))) in pipe_poll()
1511 ub->st_size = pipe->pipe_buffer.cnt; in pipe_stat()
1579 kif->kf_un.kf_pipe.kf_pipe_buffer_cnt = pi->pipe_buffer.cnt; in pipe_fill_kinfo()
1590 if (cpipe->pipe_buffer.buffer != NULL) { in pipe_free_kmem()
1591 atomic_subtract_long(&amountpipekva, cpipe->pipe_buffer.size); in pipe_free_kmem()
1593 (vm_offset_t)cpipe->pipe_buffer.buffer, in pipe_free_kmem()
1594 (vm_offset_t)cpipe->pipe_buffer.buffer + cpipe->pipe_buffer.size); in pipe_free_kmem()
1595 cpipe->pipe_buffer.buffer = NULL; in pipe_free_kmem()
1745 kn->kn_data = rpipe->pipe_buffer.cnt; in filt_piperead()
1775 } else if (wpipe->pipe_buffer.size > 0) { in filt_pipewrite()
1776 kn->kn_data = wpipe->pipe_buffer.size - in filt_pipewrite()
1777 wpipe->pipe_buffer.cnt; in filt_pipewrite()