Changeset 14032


Ignore:
Timestamp:
2009-01-14T01:52:51+01:00 (9 years ago)
Author:
nbd
Message:

work around problems with the libpthread onexit() handler

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/toolchain/uClibc/patches/200-libpthread_fix.patch

    r14027 r14032  
    3434 lib-a-$(UCLIBC_HAS_THREADS) += $(top_builddir)lib/libpthread.a 
    3535 lib-so-$(UCLIBC_HAS_THREADS) += $(top_builddir)lib/libpthread.so 
     36--- a/libpthread/linuxthreads/pthread.c 
     37+++ b/libpthread/linuxthreads/pthread.c 
     38@@ -32,6 +32,8 @@ 
     39 #include "smp.h" 
     40 #include <not-cancel.h> 
     41  
     42+#define HAVE_Z_NODELETE 
     43+ 
     44 /* Sanity check.  */ 
     45 #if !defined __SIGRTMIN || (__SIGRTMAX - __SIGRTMIN) < 3 
     46 # error "This must not happen" 
     47@@ -976,7 +978,9 @@ static void pthread_onexit_process(int r 
     48     request.req_args.exit.code = retcode; 
     49     TEMP_FAILURE_RETRY(write_not_cancel(__pthread_manager_request, 
     50                                        (char *) &request, sizeof(request))); 
     51+#ifdef notyet 
     52     suspend(self); 
     53+#endif 
     54     /* Main thread should accumulate times for thread manager and its 
     55        children, so that timings for main thread account for all threads. */ 
     56     if (self == __pthread_main_thread) 
Note: See TracChangeset for help on using the changeset viewer.