summaryrefslogtreecommitdiff
path: root/usr/src
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src')
-rw-r--r--usr/src/uts/common/brand/lx/syscall/lx_pipe.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/usr/src/uts/common/brand/lx/syscall/lx_pipe.c b/usr/src/uts/common/brand/lx/syscall/lx_pipe.c
index d6c8f1d274..cdada58f15 100644
--- a/usr/src/uts/common/brand/lx/syscall/lx_pipe.c
+++ b/usr/src/uts/common/brand/lx/syscall/lx_pipe.c
@@ -180,6 +180,15 @@ lx_hd_pipe(intptr_t arg, int flags)
(void) lx_pipe_setsz(str, LX_DEFAULT_PIPE_SIZE, B_TRUE);
/*
+ * Because we're using streams to increase the capacity of the pipe
+ * up to the default Linux capacity, we have to switch the pipe
+ * out of FIFOFAST mode and back to a normal stream. In fast mode
+ * the pipe capacity is limited to "Fifohiwat" which is a compile-time
+ * limit set to FIFOHIWAT.
+ */
+ fifo_fastoff(VTOF(vp1));
+
+ /*
* Set the O_NONBLOCK flag if requested.
*/
if (flags & FNONBLOCK) {