mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-29 11:41:21 +03:00
Update.
2000-07-21 Wolfram Gloger <wg@malloc.de> * malloc/malloc.c (chunk_alloc): Try mmap_chunk() for smaller allocations only if a non-main arena cannot be extended. * sysdeps/powerpc/bp-asm.h (DISCARD_BOUNDS): Rename from UNCHECK_BOUNDS.
This commit is contained in:
@ -2938,9 +2938,12 @@ chunk_alloc(ar_ptr, nb) arena *ar_ptr; INTERNAL_SIZE_T nb;
|
||||
if ((remainder_size = chunksize(top(ar_ptr)) - nb) < (long)MINSIZE)
|
||||
{
|
||||
#if HAVE_MMAP
|
||||
/* A last attempt: when we are out of address space in the arena,
|
||||
try mmap anyway, as long as it is allowed at all. */
|
||||
if (n_mmaps_max > 0 && (victim = mmap_chunk(nb)) != 0)
|
||||
/* A last attempt: when we are out of address space in a
|
||||
non-main arena, try mmap anyway, as long as it is allowed at
|
||||
all. */
|
||||
if (ar_ptr != &main_arena &&
|
||||
n_mmaps_max > 0 &&
|
||||
(victim = mmap_chunk(nb)) != 0)
|
||||
return victim;
|
||||
#endif
|
||||
return 0; /* propagate failure */
|
||||
|
Reference in New Issue
Block a user