aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog2
-rw-r--r--malloc/malloc.c6
2 files changed, 5 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 33d0e1ba4e..261f9440a6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,7 @@
2015-09-14 Carlos O'Donell <carlos@redhat.com>
+ * malloc/malloc.c (systrim): Use ALIGN_DOWN.
+
* Makefile ($(objpfx)check-local-headers.out): Redirect stdin from
/dev/null.
diff --git a/malloc/malloc.c b/malloc/malloc.c
index 452f036387..0eca9ce0e2 100644
--- a/malloc/malloc.c
+++ b/malloc/malloc.c
@@ -241,7 +241,7 @@
/* For MIN, MAX, powerof2. */
#include <sys/param.h>
-/* For ALIGN_UP. */
+/* For ALIGN_UP et. al. */
#include <libc-internal.h>
@@ -2767,8 +2767,8 @@ systrim (size_t pad, mstate av)
if (top_area <= pad)
return 0;
- /* Release in pagesize units, keeping at least one page */
- extra = (top_area - pad) & ~(pagesize - 1);
+ /* Release in pagesize units and round down to the nearest page. */
+ extra = ALIGN_DOWN(top_area - pad, pagesize);
if (extra == 0)
return 0;