CVSROOT: /cvs Module name: src Changes by: sema...@cvs.openbsd.org 2019/07/13 00:51:59
Modified files: sys/kern : sys_pipe.c Log message: pipe_write() do opportunistic buffer resizing, when the buffer is empty. but there is a possible sleeping point between the check (cnt == 0) and the resize (pipespace() call), resulting resizing on possibly not empty buffer. fix it by rechecking the buffer usage once the exclusive lock is hold. it should be revisited later as part of larger work on pipe(2). ok visa@ anton@