summaryrefslogtreecommitdiff
path: root/sys/dev/usb/ucom.c
diff options
context:
space:
mode:
authorMiod Vallat <miod@cvs.openbsd.org>2003-10-03 16:38:04 +0000
committerMiod Vallat <miod@cvs.openbsd.org>2003-10-03 16:38:04 +0000
commite43c66ff4e929d0beb6716fb882523dc136b8c0c (patch)
tree4394ad7ba1c7886c97e1b4b62491b57f6d5361dd /sys/dev/usb/ucom.c
parent58eb6ce5f7527ee83794ee261045e7a684d27912 (diff)
Bring several fixes from FreeBSD to our current pipe implementation:
- when allocating or growing a pipe buffer is not possible, do not panic but report the error and handle it correctly. (1.73) - "The pipe_write() code was locking the pipe without busying it first in certain cases, and a close() by another process could potentially rip the pipe out from under the (blocked) locking operation." (from Al Viro, 1.81) - "Remove test in pipe_write() which causes write(2) to return EAGAIN on a non-blocking pipe in cases where select(2) returns the file descriptor as ready for write. This in turns causes libc_r, for one, to busy wait in such cases. Note: it is a quick performance fix, a more complex fix might be required in case this turns out to have unexpected side effects." (1.141)
Diffstat (limited to 'sys/dev/usb/ucom.c')
0 files changed, 0 insertions, 0 deletions