Re: [PATCH REBASE v4 12/14] mips: Replace arch specific way to determine 32bit task with generic version

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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 <alex@xxxxxxxx>
Reviewed-by: Kees Cook <keescook@xxxxxxxxxxxx>
---
  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-riscv@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/linux-riscv



[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux