Lines Matching refs:pipe_buffer
502 cnt = cpipe->pipe_buffer.cnt; in pipespace_new()
512 if ((cpipe->pipe_buffer.buffer == NULL) && in pipespace_new()
518 if (cpipe->pipe_buffer.buffer == NULL) { in pipespace_new()
530 if (cpipe->pipe_buffer.in <= cpipe->pipe_buffer.out) { in pipespace_new()
531 firstseg = cpipe->pipe_buffer.size - cpipe->pipe_buffer.out; in pipespace_new()
532 bcopy(&cpipe->pipe_buffer.buffer[cpipe->pipe_buffer.out], in pipespace_new()
535 bcopy(cpipe->pipe_buffer.buffer, &buffer[firstseg], in pipespace_new()
536 cpipe->pipe_buffer.in); in pipespace_new()
538 bcopy(&cpipe->pipe_buffer.buffer[cpipe->pipe_buffer.out], in pipespace_new()
543 cpipe->pipe_buffer.buffer = buffer; in pipespace_new()
544 cpipe->pipe_buffer.size = size; in pipespace_new()
545 cpipe->pipe_buffer.in = cnt; in pipespace_new()
546 cpipe->pipe_buffer.out = 0; in pipespace_new()
547 cpipe->pipe_buffer.cnt = cnt; in pipespace_new()
548 atomic_add_long(&amountpipekva, cpipe->pipe_buffer.size); in pipespace_new()
666 (rpipe->pipe_buffer.size > SMALL_PIPE_SIZE) && in pipe_read()
667 (rpipe->pipe_buffer.cnt <= SMALL_PIPE_SIZE) && in pipe_read()
679 if (rpipe->pipe_buffer.cnt > 0) { in pipe_read()
680 size = rpipe->pipe_buffer.size - rpipe->pipe_buffer.out; in pipe_read()
681 if (size > rpipe->pipe_buffer.cnt) in pipe_read()
682 size = rpipe->pipe_buffer.cnt; in pipe_read()
688 &rpipe->pipe_buffer.buffer[rpipe->pipe_buffer.out], in pipe_read()
694 rpipe->pipe_buffer.out += size; in pipe_read()
695 if (rpipe->pipe_buffer.out >= rpipe->pipe_buffer.size) in pipe_read()
696 rpipe->pipe_buffer.out = 0; in pipe_read()
698 rpipe->pipe_buffer.cnt -= size; in pipe_read()
705 if (rpipe->pipe_buffer.cnt == 0) { in pipe_read()
706 rpipe->pipe_buffer.in = 0; in pipe_read()
707 rpipe->pipe_buffer.out = 0; in pipe_read()
794 } else if (rpipe->pipe_buffer.cnt < MINPIPESIZE) { in pipe_read()
804 if ((rpipe->pipe_buffer.size - rpipe->pipe_buffer.cnt) >= PIPE_BUF) in pipe_read()
828 if (uio->uio_iov->iov_len > wpipe->pipe_buffer.size) in pipe_build_write_buffer()
829 size = wpipe->pipe_buffer.size; in pipe_build_write_buffer()
897 wpipe->pipe_buffer.in = size; in pipe_clone_write_buffer()
898 wpipe->pipe_buffer.out = 0; in pipe_clone_write_buffer()
899 wpipe->pipe_buffer.cnt = size; in pipe_clone_write_buffer()
902 iov.iov_base = wpipe->pipe_buffer.buffer; in pipe_clone_write_buffer()
953 if (wpipe->pipe_buffer.cnt > 0) { in pipe_direct_write()
1052 desiredsize = max(SMALL_PIPE_SIZE, wpipe->pipe_buffer.size); in pipe_write()
1053 while (desiredsize < wpipe->pipe_buffer.cnt + uio->uio_resid) { in pipe_write()
1065 (wpipe->pipe_buffer.size > SMALL_PIPE_SIZE) && in pipe_write()
1066 (wpipe->pipe_buffer.cnt <= SMALL_PIPE_SIZE) && in pipe_write()
1071 if ((desiredsize != wpipe->pipe_buffer.size) && in pipe_write()
1077 if (wpipe->pipe_buffer.size == 0) { in pipe_write()
1114 wpipe->pipe_buffer.size >= PIPE_MINDIRECT && in pipe_write()
1147 space = wpipe->pipe_buffer.size - wpipe->pipe_buffer.cnt; in pipe_write()
1172 segsize = wpipe->pipe_buffer.size - in pipe_write()
1173 wpipe->pipe_buffer.in; in pipe_write()
1180 error = uiomove(&wpipe->pipe_buffer.buffer[wpipe->pipe_buffer.in], in pipe_write()
1185 KASSERT(wpipe->pipe_buffer.in + segsize == in pipe_write()
1186 wpipe->pipe_buffer.size, in pipe_write()
1196 &wpipe->pipe_buffer.buffer[0], in pipe_write()
1201 wpipe->pipe_buffer.in += size; in pipe_write()
1202 if (wpipe->pipe_buffer.in >= in pipe_write()
1203 wpipe->pipe_buffer.size) { in pipe_write()
1204 KASSERT(wpipe->pipe_buffer.in == in pipe_write()
1206 wpipe->pipe_buffer.size, in pipe_write()
1208 wpipe->pipe_buffer.in = size - segsize; in pipe_write()
1211 wpipe->pipe_buffer.cnt += size; in pipe_write()
1212 KASSERT(wpipe->pipe_buffer.cnt <= in pipe_write()
1213 wpipe->pipe_buffer.size, in pipe_write()
1258 } else if (wpipe->pipe_buffer.cnt > 0) { in pipe_write()
1285 if (wpipe->pipe_buffer.cnt) in pipe_write()
1352 *(int *)data = mpipe->pipe_buffer.cnt; in pipe_ioctl()
1405 if (rpipe->pipe_map.cnt > 0 || rpipe->pipe_buffer.cnt > 0) in pipe_poll()
1412 ((wpipe->pipe_buffer.size - wpipe->pipe_buffer.cnt) >= PIPE_BUF || in pipe_poll()
1413 wpipe->pipe_buffer.size == 0))) in pipe_poll()
1489 ub->st_size = pipe->pipe_buffer.cnt; in pipe_stat()
1557 kif->kf_un.kf_pipe.kf_pipe_buffer_cnt = pi->pipe_buffer.cnt; in pipe_fill_kinfo()
1568 if (cpipe->pipe_buffer.buffer != NULL) { in pipe_free_kmem()
1569 atomic_subtract_long(&amountpipekva, cpipe->pipe_buffer.size); in pipe_free_kmem()
1571 (vm_offset_t)cpipe->pipe_buffer.buffer, in pipe_free_kmem()
1572 (vm_offset_t)cpipe->pipe_buffer.buffer + cpipe->pipe_buffer.size); in pipe_free_kmem()
1573 cpipe->pipe_buffer.buffer = NULL; in pipe_free_kmem()
1727 kn->kn_data = rpipe->pipe_buffer.cnt; in filt_piperead()
1759 kn->kn_data = (wpipe->pipe_buffer.size > 0) ? in filt_pipewrite()
1760 (wpipe->pipe_buffer.size - wpipe->pipe_buffer.cnt) : PIPE_BUF; in filt_pipewrite()