Thread (29 messages) 29 messages, 6 authors, 2019-07-26

Re: [PATCH REBASE v4 11/14] mips: Adjust brk randomization offset to fit generic version

From: Kees Cook <hidden>
Date: 2019-07-25 20:00:40
Also in: linux-arm-kernel, linux-fsdevel, linux-mm, linux-riscv, lkml

On Thu, Jul 25, 2019 at 08:22:06AM +0200, Alexandre Ghiti wrote:
On 7/24/19 7:58 AM, Alexandre Ghiti wrote:
quoted
This commit simply bumps up to 32MB and 1GB the random offset
of brk, compared to 8MB and 256MB, for 32bit and 64bit respectively.

Suggested-by: Kees Cook <redacted>
Signed-off-by: Alexandre Ghiti <alex@ghiti.fr>
Reviewed-by: Kees Cook <redacted>
---
  arch/mips/mm/mmap.c | 7 ++++---
  1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/arch/mips/mm/mmap.c b/arch/mips/mm/mmap.c
index a7e84b2e71d7..faa5aa615389 100644
--- a/arch/mips/mm/mmap.c
+++ b/arch/mips/mm/mmap.c
@@ -16,6 +16,7 @@
  #include <linux/random.h>
  #include <linux/sched/signal.h>
  #include <linux/sched/mm.h>
+#include <linux/sizes.h>
  unsigned long shm_align_mask = PAGE_SIZE - 1;	/* Sane caches */
  EXPORT_SYMBOL(shm_align_mask);
@@ -189,11 +190,11 @@ static inline unsigned long brk_rnd(void)
  	unsigned long rnd = get_random_long();
  	rnd = rnd << PAGE_SHIFT;
-	/* 8MB for 32bit, 256MB for 64bit */
+	/* 32MB for 32bit, 1GB for 64bit */
  	if (TASK_IS_32BIT_ADDR)
-		rnd = rnd & 0x7ffffful;
+		rnd = rnd & SZ_32M;
  	else
-		rnd = rnd & 0xffffffful;
+		rnd = rnd & SZ_1G;
  	return rnd;
  }
Hi Andrew,

I have just noticed that this patch is wrong, do you want me to send
another version of the entire series or is the following diff enough ?
This mistake gets fixed anyway in patch 13/14 when it gets merged with the
generic version.
While I can't speak for Andrew, I'd say, since you've got Paul and
Luis's Acks to add now, I'd say go ahead and respin with the fix and the
Acks added.

I'm really looking forward to this cleanup! Thanks again for working on
it. :)

-- 
Kees Cook
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help