cvs commit: src/lib/libpthread Makefile src/lib/libpthread/test sigsuspend_d.c src/lib/libpthread/thread thr_cancel.c thr_concurrency.c thr_create.c thr_find_thread.c thr_init.c thr_kern.c thr_nanosleep.c thr_private.h thr_sig.c thr_sigmask.c ...

Julian Elischer julian at elischer.org
Thu Jul 17 16:15:26 PDT 2003


This makes it possible to make the same code run in the same mode as
libthr.

we have not compared them for performance yet.
it is also not fully decided how this will be done in production..
will we have 2 libraries and selct one? Or will it be possible to 
use a run-time selector?
At the moment it is a compile time selection as to which you make and
a run-time (via libmap) decision wich you link to..

We'll probably make a libpthread-1:1.so and a libpthread-m:n.so.
As they are the same code the interface is pretty much guaranteed to be
the same.. Note that like libthr, the 1:1 version is incapable of doing
process-scope threads, but otherwise they are compatible.

David and Dan (The dynamic "D"s) have been working incredibly hard on
this..

Thanks guys!



On Thu, 17 Jul 2003, David Xu wrote:

> davidxu     2003/07/17 16:02:30 PDT
> 
>   FreeBSD src repository
> 
>   Modified files:
>     lib/libpthread       Makefile 
>     lib/libpthread/test  sigsuspend_d.c 
>     lib/libpthread/thread thr_cancel.c thr_concurrency.c 
>                           thr_create.c thr_find_thread.c 
>                           thr_init.c thr_kern.c thr_nanosleep.c 
>                           thr_private.h thr_sig.c thr_sigmask.c 
>                           thr_sigpending.c thr_sigsuspend.c 
>                           thr_sigwait.c thr_yield.c 
>   Log:
>   o Eliminate upcall for PTHREAD_SYSTEM_SCOPE thread, now it
>     is system bound thread and when it is blocked, no upcall is generated.
>   
>   o Add ability to libkse to allow it run in pure 1:1 threading mode,
>     defining SYSTEM_SCOPE_ONLY in Makefile can turn on this option.
>   
>   o Eliminate code for installing dummy signal handler for sigwait call.
>   
>   o Add hash table to find thread.
>   
>   Reviewed by: deischen
>   
>   Revision  Changes    Path
>   1.47      +4 -0      src/lib/libpthread/Makefile
>   1.2       +2 -0      src/lib/libpthread/test/sigsuspend_d.c
>   1.25      +5 -3      src/lib/libpthread/thread/thr_cancel.c
>   1.4       +1 -1      src/lib/libpthread/thread/thr_concurrency.c
>   1.48      +25 -17    src/lib/libpthread/thread/thr_create.c
>   1.13      +11 -13    src/lib/libpthread/thread/thr_find_thread.c
>   1.57      +11 -5     src/lib/libpthread/thread/thr_init.c
>   1.78      +217 -104  src/lib/libpthread/thread/thr_kern.c
>   1.22      +3 -2      src/lib/libpthread/thread/thr_nanosleep.c
>   1.92      +13 -9     src/lib/libpthread/thread/thr_private.h
>   1.62      +235 -136  src/lib/libpthread/thread/thr_sig.c
>   1.16      +9 -0      src/lib/libpthread/thread/thr_sigmask.c
>   1.15      +3 -2      src/lib/libpthread/thread/thr_sigpending.c
>   1.21      +5 -2      src/lib/libpthread/thread/thr_sigsuspend.c
>   1.31      +50 -101   src/lib/libpthread/thread/thr_sigwait.c
>   1.13      +8 -0      src/lib/libpthread/thread/thr_yield.c
> 



More information about the cvs-all mailing list