doesn't introduce any further regressions while it fixes
- style bugs you pointed out.
- pipe_stat now use underlying filesystem information for pipes.
- comment about pipeinfo was intended for.
- race into pipe_poll (look at fifo_iseof line).
I tested this version of the patch and found that it breaks opening a
fifo with O_TRUNC: it fails with [EINVAL]. This appears to be
pipe_truncate()'s doing. Previously, truncate requests went to the
In particular, this happens when opening a fifo for writing using
sh(1)'s > (unless 'set -C' is in effect) or >| redirection operators.
The open properly blocks until a reader arrives but then fails with
[EINVAL]. Several tests in tools/regression/bin/sh do this.