diff options
author | Ulrich Drepper <drepper@redhat.com> | 2004-09-18 21:21:36 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2004-09-18 21:21:36 +0000 |
commit | 1ab1fa6fb741caf552f2f1d79467d2455655d02b (patch) | |
tree | a62c9832387f80954fc6096873675bd54d7f9327 | |
parent | f4380a09e37999af50152fd294205119e4f875eb (diff) | |
download | glibc-1ab1fa6fb741caf552f2f1d79467d2455655d02b.zip glibc-1ab1fa6fb741caf552f2f1d79467d2455655d02b.tar.gz glibc-1ab1fa6fb741caf552f2f1d79467d2455655d02b.tar.bz2 |
Update.
2004-09-18 Ulrich Drepper <drepper@redhat.com>
* allocatestack.c (allocate_stack): Return EAGAIN instead of
ENOMEM when out of memory.
-rw-r--r-- | nptl/ChangeLog | 5 | ||||
-rw-r--r-- | nptl/allocatestack.c | 11 |
2 files changed, 12 insertions, 4 deletions
diff --git a/nptl/ChangeLog b/nptl/ChangeLog index 6cd9b0d..db3aeba 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,3 +1,8 @@ +2004-09-18 Ulrich Drepper <drepper@redhat.com> + + * allocatestack.c (allocate_stack): Return EAGAIN instead of + ENOMEM when out of memory. + 2004-09-10 Roland McGrath <roland@redhat.com> [BZ #379] diff --git a/nptl/allocatestack.c b/nptl/allocatestack.c index 6dd2621..cbdd781 100644 --- a/nptl/allocatestack.c +++ b/nptl/allocatestack.c @@ -366,8 +366,11 @@ allocate_stack (const struct pthread_attr *attr, struct pthread **pdp, /* Allocate the DTV for this thread. */ if (_dl_allocate_tls (TLS_TPADJ (pd)) == NULL) - /* Something went wrong. */ - return errno; + { + /* Something went wrong. */ + assert (errno == ENOMEM); + return EAGAIN; + } /* Prepare to modify global data. */ @@ -498,12 +501,12 @@ allocate_stack (const struct pthread_attr *attr, struct pthread **pdp, if (_dl_allocate_tls (TLS_TPADJ (pd)) == NULL) { /* Something went wrong. */ - int err = errno; + assert (errno == ENOMEM); /* Free the stack memory we just allocated. */ (void) munmap (mem, size); - return err; + return EAGAIN; } |