Add HAVE_MREMAP for mremap usage
authorPino Toscano <toscano.pino@tiscali.it>
Thu, 17 Jan 2013 20:08:12 +0000 (21:08 +0100)
committerPino Toscano <toscano.pino@tiscali.it>
Thu, 17 Jan 2013 20:08:12 +0000 (21:08 +0100)
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
malloc/arena.c
malloc/malloc.c
sysdeps/unix/sysv/linux/malloc-sysdep.h

index 885176a..e7cfb64 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2013-01-17  Pino Toscano  <toscano.pino@tiscali.it>
+
+       * sysdeps/unix/sysv/linux/malloc-sysdep.h (HAVE_MREMAP): New define.
+       * malloc/malloc.c: Include <unistd.h> and <malloc-sysdep.h>.
+       [!HAVE_MREMAP]: Remove [defined linux] case.
+       * malloc/arena.c: Do not include <malloc-sysdep.h>.
+
 2013-01-17  Siddhesh Poyarekar  <siddhesh@redhat.com>
 
        * sysdeps/ieee754/dbl-64/mpa.c: Fix header comment.
index 0c77802..7d51a9d 100644 (file)
@@ -19,9 +19,6 @@
 
 #include <stdbool.h>
 
-/* Get the implementation for check_may_shrink_heap.  */
-#include <malloc-sysdep.h>
-
 /* Compile-time constants.  */
 
 #define HEAP_MIN_SIZE (32*1024)
index 9188d4e..bbb0353 100644 (file)
 
     Compilation Environment options:
 
-    HAVE_MREMAP                0 unless linux defined
+    HAVE_MREMAP                0
 
     Changing default word sizes:
 
 
 #include <stddef.h>   /* for size_t */
 #include <stdlib.h>   /* for getenv(), abort() */
+#include <unistd.h>   /* for __libc_enable_secure */
 
 #include <malloc-machine.h>
+#include <malloc-sysdep.h>
 
 #include <atomic.h>
 #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
index 0a876df..737ca0e 100644 (file)
@@ -55,3 +55,5 @@ check_may_shrink_heap (void)
 
   return may_shrink_heap;
 }
+
+#define HAVE_MREMAP 1