This is the mail archive of the
cygwin-cvs@cygwin.com
mailing list for the Cygwin project.
winsup/cygwin ChangeLog dcrt0.cc thread.cc thr ...
- From: cgf at cygwin dot com
- To: cygwin-cvs at cygwin dot com
- Date: 10 Feb 2010 07:25:26 -0000
- Subject: winsup/cygwin ChangeLog dcrt0.cc thread.cc thr ...
CVSROOT: /cvs/uberbaum
Module name: winsup
Changes by: cgf@sourceware.org 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