On 7/24/19 7:16 PM, Luis Chamberlain wrote:
On Wed, Jul 24, 2019 at 01:58:48AM -0400, Alexandre Ghiti wrote:
Mips uses TASK_IS_32BIT_ADDR to determine if a task is 32bit, but
this define is mips specific and other arches do not have it: instead,
use !IS_ENABLED(CONFIG_64BIT) || is_compat_task() condition.

Signed-off-by: Alexandre Ghiti <a...@ghiti.fr>
Reviewed-by: Kees Cook <keesc...@chromium.org>
---
  arch/mips/mm/mmap.c | 3 ++-
  1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/arch/mips/mm/mmap.c b/arch/mips/mm/mmap.c
index faa5aa615389..d4eafbb82789 100644
--- a/arch/mips/mm/mmap.c
+++ b/arch/mips/mm/mmap.c
@@ -17,6 +17,7 @@
  #include <linux/sched/signal.h>
  #include <linux/sched/mm.h>
  #include <linux/sizes.h>
+#include <linux/compat.h>
unsigned long shm_align_mask = PAGE_SIZE - 1; /* Sane caches */
  EXPORT_SYMBOL(shm_align_mask);
@@ -191,7 +192,7 @@ static inline unsigned long brk_rnd(void)
rnd = rnd << PAGE_SHIFT;
        /* 32MB for 32bit, 1GB for 64bit */
-       if (TASK_IS_32BIT_ADDR)
+       if (!IS_ENABLED(CONFIG_64BIT) || is_compat_task())
                rnd = rnd & SZ_32M;
        else
                rnd = rnd & SZ_1G;
--
Since there are at least two users why not just create an inline for
this which describes what we are looking for and remove the comments?


Actually this is a preparatory patch, this will get merged with the generic version in the next patch.

Alex



   Luis

_______________________________________________
linux-riscv mailing list
linux-ri...@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

Reply via email to