2007-11-08 Ulrich Drepper <drepper@redhat.com>
[BZ #5245]
* sysdeps/pthread/createthread.c (do_clone): Translate clone error
if necessary.
+2007-11-08 Ulrich Drepper <drepper@redhat.com>
+
+ [BZ #5245]
+ * sysdeps/pthread/createthread.c (do_clone): Translate clone error
+ if necessary.
+
2007-11-07 Ulrich Drepper <drepper@redhat.com>
[BZ #5245]
PREPARE_CREATE;
#endif
- if (stopped)
- /* We Make sure the thread does not run far by forcing it to get a
+ if (__builtin_expect (stopped != 0, 0))
+ /* We make sure the thread does not run far by forcing it to get a
lock. We lock it here too so that the new thread cannot continue
until we tell it to. */
lll_lock (pd->lock, LLL_PRIVATE);
if (IS_DETACHED (pd))
__deallocate_stack (pd);
- return errno;
+ /* We have to translate error codes. */
+ return errno == ENOMEM ? EAGAIN : errno;
}
/* Now we have the possibility to set scheduling parameters etc. */