summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorphk <phk@FreeBSD.org>2000-04-10 09:24:44 +0000
committerphk <phk@FreeBSD.org>2000-04-10 09:24:44 +0000
commit296f8c148adc2c891f405dcae8a6844bb6e9314d (patch)
tree73c6688d676c8d82aa04eecd3f4e1538790daf80 /lib
parent8031b933e75f24637db3e18226e99e5d05f13912 (diff)
downloadFreeBSD-src-296f8c148adc2c891f405dcae8a6844bb6e9314d.zip
FreeBSD-src-296f8c148adc2c891f405dcae8a6844bb6e9314d.tar.gz
Add a missing THREAD_UNLOCK() found missing by Valentin Nechayev
<netch@segfault.kiev.ua> Remove allocation failure check from 'A' option, the 'X' option does this as a standalone check now.
Diffstat (limited to 'lib')
-rw-r--r--lib/libc/stdlib/malloc.36
-rw-r--r--lib/libc/stdlib/malloc.c4
2 files changed, 2 insertions, 8 deletions
diff --git a/lib/libc/stdlib/malloc.3 b/lib/libc/stdlib/malloc.3
index f384a14..fe2500f 100644
--- a/lib/libc/stdlib/malloc.3
+++ b/lib/libc/stdlib/malloc.3
@@ -152,7 +152,7 @@ and lowercase means that the behavior is not set, or off.
.Bl -tag -width indent
.It A
All warnings (except for the warning about unknown
-flags being set), and failure to allocate memory become fatal.
+flags being set) become fatal.
The process will call
.Xr abort 3
in these cases.
@@ -370,10 +370,6 @@ The allocation functions were compiled with
.Dq EXTRA_SANITY
defined, and an error was found during the additional error checking.
Consult the source code for further information.
-.It "allocation failed
-If the
-.Dq A
-option is specified it is a fatal error for an allocation function to fail.
.It "mmap(2) failed, check limits
This most likely means that the system is dangerously overloaded or that
the process' limits are incorrectly specified.
diff --git a/lib/libc/stdlib/malloc.c b/lib/libc/stdlib/malloc.c
index ac0dd48..4121718 100644
--- a/lib/libc/stdlib/malloc.c
+++ b/lib/libc/stdlib/malloc.c
@@ -715,9 +715,6 @@ imalloc(size_t size)
else
result = malloc_pages(size);
- if (malloc_abort && !result)
- wrterror("allocation failed.\n");
-
if (malloc_zero && result)
memset(result, 0, size);
@@ -1067,6 +1064,7 @@ malloc(size_t size)
if (malloc_active++) {
wrtwarning("recursive call.\n");
malloc_active--;
+ THREAD_UNLOCK();
return (0);
}
if (!malloc_started)
OpenPOWER on IntegriCloud