Clarify that select(2) will block on the read end of a FIFO, if the write end of the FIFO has never been opened before, unlike read(2). --- man2/select.2 | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/man2/select.2 b/man2/select.2 index 199522a01..cb3295823 100644 --- a/man2/select.2 +++ b/man2/select.2 @@ -77,6 +77,15 @@ perform a corresponding I/O operation (e.g., or a sufficiently small .BR write (2)) without blocking. +.PP +However, note that +.BR select () +will block on the read end of a FIFO, if the write end of +the FIFO has never been opened before, unlike +.BR read (2). +(read(2) will always return with zero if the write end of +the pipe/fifo is closed - see pipe(7) where the text starts with +I/O on pipes and FIFOs) .\" .SS fd_set A structure type that can represent a set of file descriptors. -- 2.38.1