mirror of
https://sourceware.org/git/glibc.git
synced 2024-12-23 03:10:05 +00:00
[BZ #5245]
2007-11-08 Ulrich Drepper <drepper@redhat.com> [BZ #5245] * sysdeps/pthread/createthread.c (do_clone): Translate clone error if necessary.
This commit is contained in:
parent
f6ed654cab
commit
0f7e0ee507
@ -1,3 +1,9 @@
|
||||
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]
|
||||
|
@ -56,8 +56,8 @@ do_clone (struct pthread *pd, const struct pthread_attr *attr,
|
||||
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);
|
||||
@ -84,7 +84,8 @@ do_clone (struct pthread *pd, const struct pthread_attr *attr,
|
||||
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. */
|
||||
|
Loading…
Reference in New Issue
Block a user