From 2a26ef3a012cc29623423ca52c1cc8001d847d54 Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Thu, 17 Jan 2013 21:08:12 +0100 Subject: Add HAVE_MREMAP for mremap usage Introduce (only on Linux) and use a HAVE_MREMAP symbol to advertize mremap availability. Move the malloc-sysdep.h include from arena.c to malloc.c, since what is provided by malloc-sysdep.h is needed earlier in malloc.c, before the inclusion of arena.c. --- ChangeLog | 7 +++++++ malloc/arena.c | 3 --- malloc/malloc.c | 12 ++++-------- sysdeps/unix/sysv/linux/malloc-sysdep.h | 2 ++ 4 files changed, 13 insertions(+), 11 deletions(-) diff --git a/ChangeLog b/ChangeLog index 885176aed4..e7cfb64231 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2013-01-17 Pino Toscano + + * sysdeps/unix/sysv/linux/malloc-sysdep.h (HAVE_MREMAP): New define. + * malloc/malloc.c: Include and . + [!HAVE_MREMAP]: Remove [defined linux] case. + * malloc/arena.c: Do not include . + 2013-01-17 Siddhesh Poyarekar * sysdeps/ieee754/dbl-64/mpa.c: Fix header comment. diff --git a/malloc/arena.c b/malloc/arena.c index 0c7780282b..7d51a9dd14 100644 --- a/malloc/arena.c +++ b/malloc/arena.c @@ -19,9 +19,6 @@ #include -/* Get the implementation for check_may_shrink_heap. */ -#include - /* Compile-time constants. */ #define HEAP_MIN_SIZE (32*1024) diff --git a/malloc/malloc.c b/malloc/malloc.c index 9188d4e49e..bbb035393f 100644 --- a/malloc/malloc.c +++ b/malloc/malloc.c @@ -168,7 +168,7 @@ Compilation Environment options: - HAVE_MREMAP 0 unless linux defined + HAVE_MREMAP 0 Changing default word sizes: @@ -214,8 +214,10 @@ #include /* for size_t */ #include /* for getenv(), abort() */ +#include /* for __libc_enable_secure */ #include +#include #include #include <_itoa.h> @@ -490,19 +492,13 @@ void *(*__morecore)(ptrdiff_t) = __default_morecore; /* Define HAVE_MREMAP to make realloc() use mremap() to re-allocate - large blocks. This is currently only possible on Linux with - kernel versions newer than 1.3.77. + large blocks. */ #ifndef HAVE_MREMAP -#ifdef linux -#define HAVE_MREMAP 1 -#else #define HAVE_MREMAP 0 #endif -#endif /* HAVE_MREMAP */ - /* This version of malloc supports the standard SVID/XPG mallinfo diff --git a/sysdeps/unix/sysv/linux/malloc-sysdep.h b/sysdeps/unix/sysv/linux/malloc-sysdep.h index 0a876dfa6a..737ca0e653 100644 --- a/sysdeps/unix/sysv/linux/malloc-sysdep.h +++ b/sysdeps/unix/sysv/linux/malloc-sysdep.h @@ -55,3 +55,5 @@ check_may_shrink_heap (void) return may_shrink_heap; } + +#define HAVE_MREMAP 1 -- cgit 1.4.1