cvs commit: src/lib/libc/gen Makefile.inc errlst.c src/lib/libc/i386/sys cerror.S ptrace.S src/lib/libc/sys Makefile.inc __error.c src/lib/libc_r/sys Makefile.inc uthread_error.c src/lib/libc_r/uthread Makefile.inc ...
David Xu
davidxu at t2t2.com
Thu May 5 02:44:26 PDT 2005
No, both DragonflyBSD and FreeBSD's tls implementation are not
asynchronous signal safe yet, also I did try to support it
in rtld, but it still does not work correctly, because reader
lock in rtld does not disable signal.
I think this change should be delayed, otherwise it will cause
a dead lock in signal handler.
I remembered I ever told Matt that a fast userland critical section
is needed, I just don't have enough time to follow the Dragonfly
development speed, sorry for that.
David Xu
Joerg Sonnenberger wrote:
joerg 2005/05/03 00:29:04 PDT
DragonFly src repository
Modified files:
lib/libc/gen Makefile.inc errlst.c
lib/libc/i386/sys cerror.S ptrace.S
lib/libc/sys Makefile.inc
lib/libc_r/sys Makefile.inc
lib/libc_r/uthread Makefile.inc pthread_private.h
uthread_init.c uthread_mutex.c
lib/libthread_xu Makefile pthread.map
lib/libthread_xu/thread Makefile.inc thr_mutex.c
sys/sys errno.h
Removed files:
lib/libc/sys __error.c
lib/libc_r/sys uthread_error.c
lib/libc_r/uthread uthread_seterrno.c
lib/libthread_xu/sys Makefile.inc thr_error.c
lib/libthread_xu/thread thr_seterrno.c
Log:
Make errno a thread-local variable and remove the __error function.
The handling of ceiling violations on mutexes can be improved, it
currently needs two syscalls.
Revision Changes Path
1.13 +5 -1 src/lib/libc/gen/Makefile.inc
1.3 +2 -1 src/lib/libc/gen/errlst.c
1.4 +14 -12 src/lib/libc/i386/sys/cerror.S
1.4 +16 -3 src/lib/libc/i386/sys/ptrace.S
1.13 +0 -5 src/lib/libc/sys/Makefile.inc
1.3 +2 -2 src/lib/libc_r/sys/Makefile.inc
1.6 +0 -1 src/lib/libc_r/uthread/Makefile.inc
1.8 +1 -7 src/lib/libc_r/uthread/pthread_private.h
1.8 +0 -1 src/lib/libc_r/uthread/uthread_init.c
1.3 +7 -5 src/lib/libc_r/uthread/uthread_mutex.c
1.4 +0 -2 src/lib/libthread_xu/Makefile
1.3 +0 -1 src/lib/libthread_xu/pthread.map
1.3 +0 -1 src/lib/libthread_xu/thread/Makefile.inc
1.5 +6 -4 src/lib/libthread_xu/thread/thr_mutex.c
1.6 +6 -5 src/sys/sys/errno.h
http://www.dragonflybsd.org/cvsweb/src/lib/libc/gen/Makefile.inc.diff?r1=1.12&r2=1.13&f=u
http://www.dragonflybsd.org/cvsweb/src/lib/libc/gen/errlst.c.diff?r1=1.2&r2=1.3&f=u
http://www.dragonflybsd.org/cvsweb/src/lib/libc/i386/sys/cerror.S.diff?r1=1.3&r2=1.4&f=u
http://www.dragonflybsd.org/cvsweb/src/lib/libc/i386/sys/ptrace.S.diff?r1=1.3&r2=1.4&f=u
http://www.dragonflybsd.org/cvsweb/src/lib/libc/sys/Makefile.inc.diff?r1=1.12&r2=1.13&f=u
http://www.dragonflybsd.org/cvsweb/src/lib/libc_r/sys/Makefile.inc.diff?r1=1.2&r2=1.3&f=u
http://www.dragonflybsd.org/cvsweb/src/lib/libc_r/uthread/Makefile.inc.diff?r1=1.5&r2=1.6&f=u
http://www.dragonflybsd.org/cvsweb/src/lib/libc_r/uthread/pthread_private.h.diff?r1=1.7&r2=1.8&f=u
http://www.dragonflybsd.org/cvsweb/src/lib/libc_r/uthread/uthread_init.c.diff?r1=1.7&r2=1.8&f=u
http://www.dragonflybsd.org/cvsweb/src/lib/libc_r/uthread/uthread_mutex.c.diff?r1=1.2&r2=1.3&f=u
http://www.dragonflybsd.org/cvsweb/src/lib/libthread_xu/Makefile.diff?r1=1.3&r2=1.4&f=u
http://www.dragonflybsd.org/cvsweb/src/lib/libthread_xu/pthread.map.diff?r1=1.2&r2=1.3&f=u
http://www.dragonflybsd.org/cvsweb/src/lib/libthread_xu/thread/Makefile.inc.diff?r1=1.2&r2=1.3&f=u
http://www.dragonflybsd.org/cvsweb/src/lib/libthread_xu/thread/thr_mutex.c.diff?r1=1.4&r2=1.5&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/sys/errno.h.diff?r1=1.5&r2=1.6&f=u
More information about the Commits
mailing list