DragonFly commits List (threaded) for 2006-06
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]
cvs commit: src/lib/libc_r/uthread pthread_private.h uthread_accept.c uthread_connect.c uthread_exit.c uthread_fd.c uthread_info.c uthread_kern.c uthread_read.c uthread_readv.c uthread_sig.c uthread_spinlock.c uthread_write.c uthread_writev.c
dillon 2006/06/13 18:45:28 PDT
DragonFly src repository
Modified files:
lib/libc_r/uthread pthread_private.h uthread_accept.c
uthread_connect.c uthread_exit.c
uthread_fd.c uthread_info.c
uthread_kern.c uthread_read.c
uthread_readv.c uthread_sig.c
uthread_spinlock.c uthread_write.c
uthread_writev.c
Log:
Do not set O_NONBLOCK on a threaded program's descriptors any more. Instead,
use the new system calls to directly issue non-blocking I/O. Additionally,
force blocking I/O for debug output.
This partly solves the problem of programs such as bmake or gmake fork/exec'd
children which happen to be threaded. The children would set O_NONBLOCK
on e.g. stdin, stdout, and stderr, resulting in unexpected operation if the
unrelated parent program tries to issue a read or write.
Solves: gmake 'write error' problem
Revision Changes Path
1.10 +8 -2 src/lib/libc_r/uthread/pthread_private.h
1.3 +2 -2 src/lib/libc_r/uthread/uthread_accept.c
1.3 +2 -2 src/lib/libc_r/uthread/uthread_connect.c
1.5 +2 -1 src/lib/libc_r/uthread/uthread_exit.c
1.3 +10 -12 src/lib/libc_r/uthread/uthread_fd.c
1.5 +15 -15 src/lib/libc_r/uthread/uthread_info.c
1.5 +4 -2 src/lib/libc_r/uthread/uthread_kern.c
1.3 +2 -2 src/lib/libc_r/uthread/uthread_read.c
1.3 +2 -2 src/lib/libc_r/uthread/uthread_readv.c
1.4 +1 -1 src/lib/libc_r/uthread/uthread_sig.c
1.4 +2 -1 src/lib/libc_r/uthread/uthread_spinlock.c
1.5 +1 -1 src/lib/libc_r/uthread/uthread_write.c
1.3 +2 -2 src/lib/libc_r/uthread/uthread_writev.c
http://www.dragonflybsd.org/cvsweb/src/lib/libc_r/uthread/pthread_private.h.diff?r1=1.9&r2=1.10&f=u
http://www.dragonflybsd.org/cvsweb/src/lib/libc_r/uthread/uthread_accept.c.diff?r1=1.2&r2=1.3&f=u
http://www.dragonflybsd.org/cvsweb/src/lib/libc_r/uthread/uthread_connect.c.diff?r1=1.2&r2=1.3&f=u
http://www.dragonflybsd.org/cvsweb/src/lib/libc_r/uthread/uthread_exit.c.diff?r1=1.4&r2=1.5&f=u
http://www.dragonflybsd.org/cvsweb/src/lib/libc_r/uthread/uthread_fd.c.diff?r1=1.2&r2=1.3&f=u
http://www.dragonflybsd.org/cvsweb/src/lib/libc_r/uthread/uthread_info.c.diff?r1=1.4&r2=1.5&f=u
http://www.dragonflybsd.org/cvsweb/src/lib/libc_r/uthread/uthread_kern.c.diff?r1=1.4&r2=1.5&f=u
http://www.dragonflybsd.org/cvsweb/src/lib/libc_r/uthread/uthread_read.c.diff?r1=1.2&r2=1.3&f=u
http://www.dragonflybsd.org/cvsweb/src/lib/libc_r/uthread/uthread_readv.c.diff?r1=1.2&r2=1.3&f=u
http://www.dragonflybsd.org/cvsweb/src/lib/libc_r/uthread/uthread_sig.c.diff?r1=1.3&r2=1.4&f=u
http://www.dragonflybsd.org/cvsweb/src/lib/libc_r/uthread/uthread_spinlock.c.diff?r1=1.3&r2=1.4&f=u
http://www.dragonflybsd.org/cvsweb/src/lib/libc_r/uthread/uthread_write.c.diff?r1=1.4&r2=1.5&f=u
http://www.dragonflybsd.org/cvsweb/src/lib/libc_r/uthread/uthread_writev.c.diff?r1=1.2&r2=1.3&f=u
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]