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 ...

Matthew Dillon dillon at apollo.backplane.com
Tue May 3 09:48:52 PDT 2005


    p.s. to everyone following along... this change is a precursor of things
    to come.  It's a BIG deal.   Make sure you have an up-to-date kernel 
    due to the recent TLS bug fix.

    The big deal here is that we are now using TLS (thread locale storage)
    in all binaries, even unthreaded ones.  That is, we are starting to use
    __thread for per-thread declarations like errno, whether the program
    is threaded or not. 

    This will allow us to normalize libc and *GREATLY* reduce the complexity
    of the thread libraries.  e.g. things like 'strtok' won't have to be
    avoided and won't have to be overridden by the thread library.  The libc
    version will 'just work'.

					-Matt
					Matthew Dillon 
					<dillon at xxxxxxxxxxxxx>


: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.
:...





More information about the Commits mailing list