CVSROOT:        /cvs/uberbaum
Module name:    winsup
Changes by:     [email protected]     2010-02-10 07:25:26

Modified files:
        cygwin         : ChangeLog dcrt0.cc thread.cc thread.h 

Log message:
        * dcrt0.cc (_dll_crt0): Set _main_tls as early as possible.
        * thread.cc (pthread_mutex::can_be_unlocked): Remove check for
        MUTEX_OWNER_ANONYMOUS since it is racy and unsafe.
        (pthread::init_mainthread): Initialize thread directly from _my_tls.
        (pthread::self): Ditto.
        (pthread::get_tls_self_pointer): Delete.
        (pthread_mutex::pthread_mutex): Use an event rather than a semaphore.
        (pthread_mutex::lock): Rename from _<func>.  Derive self directly.
        (pthread_mutex::tryunlock): Ditto.
        (pthread_mutex::destroy): Ditto.
        (pthread_mutex::unlock): Ditto.  Accommodate change from semaphore to 
event.
        (pthread_mutex::_fixup_after_fork): Accommodate change from semaphore 
to event.
        (pthread_mutex::init): Don't attempt to initialize a semaphore unless 
it is in
        an initialized state.  Do this check under 
mutex_initialization_lock.lock
        * thread.h (fast_mutex::init): Use event rather than semaphore.
        (fast_mutex::lock): Ditto.
        (pthread_mutex::_lock): Delete.
        (pthread_mutex::_unlock): Ditto.
        (pthread_mutex::_trylock): Ditto.
        (pthread_mutex::_destroy): Ditto.
        (pthread_mutex::get_pthread_self): Ditto.
        (pthread_mutex::get_tls_self_pointer): Ditto.
        (pthread_mutex::lock): Un-inline.
        (pthread_mutex::unlock): Ditto.
        (pthread_mutex::trylock): Ditto.
        (pthread_mutex::destroy): Ditto.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/winsup/cygwin/ChangeLog.diff?cvsroot=uberbaum&r1=1.4814&r2=1.4815
http://sourceware.org/cgi-bin/cvsweb.cgi/winsup/cygwin/dcrt0.cc.diff?cvsroot=uberbaum&r1=1.371&r2=1.372
http://sourceware.org/cgi-bin/cvsweb.cgi/winsup/cygwin/thread.cc.diff?cvsroot=uberbaum&r1=1.218&r2=1.219
http://sourceware.org/cgi-bin/cvsweb.cgi/winsup/cygwin/thread.h.diff?cvsroot=uberbaum&r1=1.111&r2=1.112

Reply via email to