summaryrefslogtreecommitdiff
path: root/malloc/malloc.c
diff options
context:
space:
mode:
Diffstat (limited to 'malloc/malloc.c')
-rw-r--r--malloc/malloc.c6
1 files changed, 3 insertions, 3 deletions
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;