From 161387a725ca8b931c1f68dd373f44e0bd0e7922 Mon Sep 17 00:00:00 2001 From: Christopher Faylor Date: Wed, 10 Feb 2010 03:17:32 +0000 Subject: * cygtls.h (struct _cygtls): Remove unneeded elements. * thread.cc (pthread::exit): Avoid potential double call to _my_tls.remove. * tlsoffsets.h: Regenerate. --- winsup/cygwin/ChangeLog | 7 +++++ winsup/cygwin/cygtls.h | 1 - winsup/cygwin/thread.cc | 6 +---- winsup/cygwin/tlsoffsets.h | 66 ++++++++++++++++++++-------------------------- 4 files changed, 37 insertions(+), 43 deletions(-) diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 98daeca14..2469ee1bd 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,10 @@ +2010-02-09 Christopher Faylor + + * cygtls.h (struct _cygtls): Remove unneeded elements. + * thread.cc (pthread::exit): Avoid potential double call to + _my_tls.remove. + * tlsoffsets.h: Regenerate. + 2010-02-09 Corinna Vinschen * nlsfuncs.cc (__set_lc_messages_from_win): Fix typo. diff --git a/winsup/cygwin/cygtls.h b/winsup/cygwin/cygtls.h index 138d8f2bb..f05379f48 100644 --- a/winsup/cygwin/cygtls.h +++ b/winsup/cygwin/cygtls.h @@ -207,7 +207,6 @@ struct _cygtls class cygthread *_ctinfo; san andreas; waitq wq; - struct _cygtls *prev, *next; int sig; unsigned incyg; unsigned spinning; diff --git a/winsup/cygwin/thread.cc b/winsup/cygwin/thread.cc index 2f9695f0f..98ffde24f 100644 --- a/winsup/cygwin/thread.cc +++ b/winsup/cygwin/thread.cc @@ -486,14 +486,10 @@ pthread::exit (void *value_ptr) _my_tls.local_clib.__sdidinit = 0; (_reclaim_reent) (_REENT); - if (InterlockedDecrement (&MT_INTERFACE->threadcount) == 0) ::exit (0); else - { - _my_tls.remove (INFINITE); - ExitThread (0); - } + ExitThread (0); } int diff --git a/winsup/cygwin/tlsoffsets.h b/winsup/cygwin/tlsoffsets.h index 940d3fee9..cdc423def 100644 --- a/winsup/cygwin/tlsoffsets.h +++ b/winsup/cygwin/tlsoffsets.h @@ -1,6 +1,6 @@ //;# autogenerated: Do not edit. -//; $tls::sizeof__cygtls = 4332; +//; $tls::sizeof__cygtls = 4324; //; $tls::func = -12700; //; $tls::pfunc = 0; //; $tls::el = -12696; @@ -45,24 +45,20 @@ //; $tls::pandreas = 3232; //; $tls::wq = -9452; //; $tls::pwq = 3248; -//; $tls::prev = -9424; -//; $tls::pprev = 3276; -//; $tls::next = -9420; -//; $tls::pnext = 3280; -//; $tls::sig = -9416; -//; $tls::psig = 3284; -//; $tls::incyg = -9412; -//; $tls::pincyg = 3288; -//; $tls::spinning = -9408; -//; $tls::pspinning = 3292; -//; $tls::stacklock = -9404; -//; $tls::pstacklock = 3296; -//; $tls::stackptr = -9400; -//; $tls::pstackptr = 3300; -//; $tls::stack = -9396; -//; $tls::pstack = 3304; -//; $tls::initialized = -8372; -//; $tls::pinitialized = 4328; +//; $tls::sig = -9424; +//; $tls::psig = 3276; +//; $tls::incyg = -9420; +//; $tls::pincyg = 3280; +//; $tls::spinning = -9416; +//; $tls::pspinning = 3284; +//; $tls::stacklock = -9412; +//; $tls::pstacklock = 3288; +//; $tls::stackptr = -9408; +//; $tls::pstackptr = 3292; +//; $tls::stack = -9404; +//; $tls::pstack = 3296; +//; $tls::initialized = -8380; +//; $tls::pinitialized = 4320; //; __DATA__ #define tls_func (-12700) @@ -109,21 +105,17 @@ #define tls_pandreas (3232) #define tls_wq (-9452) #define tls_pwq (3248) -#define tls_prev (-9424) -#define tls_pprev (3276) -#define tls_next (-9420) -#define tls_pnext (3280) -#define tls_sig (-9416) -#define tls_psig (3284) -#define tls_incyg (-9412) -#define tls_pincyg (3288) -#define tls_spinning (-9408) -#define tls_pspinning (3292) -#define tls_stacklock (-9404) -#define tls_pstacklock (3296) -#define tls_stackptr (-9400) -#define tls_pstackptr (3300) -#define tls_stack (-9396) -#define tls_pstack (3304) -#define tls_initialized (-8372) -#define tls_pinitialized (4328) +#define tls_sig (-9424) +#define tls_psig (3276) +#define tls_incyg (-9420) +#define tls_pincyg (3280) +#define tls_spinning (-9416) +#define tls_pspinning (3284) +#define tls_stacklock (-9412) +#define tls_pstacklock (3288) +#define tls_stackptr (-9408) +#define tls_pstackptr (3292) +#define tls_stack (-9404) +#define tls_pstack (3296) +#define tls_initialized (-8380) +#define tls_pinitialized (4320) -- cgit v1.2.3