Author: sthibault
Date: 2013-11-01 22:30:48 +0000 (Fri, 01 Nov 2013)
New Revision: 5745

Modified:
   glibc-package/trunk/debian/changelog
   glibc-package/trunk/debian/patches/hurd-i386/libpthread.diff
Log:
  * patches/hurd-i386/libpthread.diff: Synchronize with upstream.


Modified: glibc-package/trunk/debian/changelog
===================================================================
--- glibc-package/trunk/debian/changelog        2013-11-01 21:24:00 UTC (rev 
5744)
+++ glibc-package/trunk/debian/changelog        2013-11-01 22:30:48 UTC (rev 
5745)
@@ -26,6 +26,7 @@
   * patches/hurd-i386/tg-libc_getspecific.diff: New patch, fix erroneous
     __libc_getspecific weak reference.
   * control: Make libc0.3 break old hurd with overzealous inlines.
+  * patches/hurd-i386/libpthread.diff: Synchronize with upstream.
 
  -- Adam Conrad <adcon...@0c3.net>  Sun, 22 Sep 2013 23:39:33 -0600
 

Modified: glibc-package/trunk/debian/patches/hurd-i386/libpthread.diff
===================================================================
--- glibc-package/trunk/debian/patches/hurd-i386/libpthread.diff        
2013-11-01 21:24:00 UTC (rev 5744)
+++ glibc-package/trunk/debian/patches/hurd-i386/libpthread.diff        
2013-11-01 22:30:48 UTC (rev 5745)
@@ -564,7 +564,7 @@
 +endif
 +
 +ifeq ($(IN_GLIBC),no)
-+$(inst_libdir) = $(libdir)
++inst_libdir = $(libdir)
 +endif
 +
 +ifeq ($(IN_GLIBC),no)
@@ -3367,7 +3367,7 @@
 +}
 --- /dev/null
 +++ b/libpthread/pthread/pt-create.c
-@@ -0,0 +1,217 @@
+@@ -0,0 +1,219 @@
 +/* Thread creation.
 +   Copyright (C) 2000, 2002, 2005, 2007 Free Software Foundation, Inc.
 +   This file is part of the GNU C Library.
@@ -3432,6 +3432,8 @@
 +  err = __pthread_create_internal (&pthread, attr, start_routine, arg);
 +  if (! err)
 +    *thread = pthread->thread;
++  else if (err == ENOMEM)
++    err = EAGAIN;
 +
 +  return err;
 +}
@@ -3552,17 +3554,17 @@
 +
 +  /* At this point it is possible to guess our pthread ID.  We have to
 +     make sure that all functions taking a pthread_t argument can
-+     handle the fact that this thread isn't really running yet.  */
++     handle the fact that this thread isn't really running yet.  Since
++     the new thread might be passed its ID through pthread_create (to
++     avoid calling pthread_self), read it before starting the thread.  */
++  *thread = pthread;
 +
 +  /* Schedule the new thread.  */
 +  err = __pthread_thread_start (pthread);
 +  if (err)
 +    goto failed_starting;
 +
-+  /* At this point the new thread is up and running.  */
 +
-+  *thread = pthread;
-+
 +  return 0;
 +
 + failed_starting:
@@ -7574,7 +7576,7 @@
 +#ifdef PAGESIZE
 +  guardsize: PAGESIZE,
 +#else
-+  guardsize: 0,
++  guardsize: 1,
 +#endif /* PAGESIZE */
 +  detachstate: PTHREAD_CREATE_JOINABLE,
 +  inheritsched: PTHREAD_EXPLICIT_SCHED,


-- 
To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/e1vcnev-0004hn...@vasks.debian.org

Reply via email to