ARM: nommu: don't limit TASK_SIZE
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Tue, 3 Jun 2014 15:24:51 +0000 (17:24 +0200)
committerUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Tue, 1 Jul 2014 09:12:08 +0000 (11:12 +0200)
With TASK_SIZE set to the maximal RAM address booting in some XIP
configurations fails (e.g. on efm32 DK3750). The problem is that
strncpy_from_user et al. check for the address not being above TASK_SIZE
(since 8c56cc8be5b3 (ARM: 7449/1: use generic strnlen_user and
strncpy_from_user functions)) and this makes booting fail if the XIP
flash is above the RAM address space.

This change is in line with blackfin, frv and m68k which also use
0xffffffff for TASK_SIZE with !MMU.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
arch/arm/include/asm/memory.h

index 2b75146..c6bbb7d 100644 (file)
@@ -91,9 +91,7 @@
  * of this define that was meant to.
  * Fortunately, there is no reference for this in noMMU mode, for now.
  */
-#ifndef TASK_SIZE
-#define TASK_SIZE              (CONFIG_DRAM_SIZE)
-#endif
+#define TASK_SIZE              UL(0xffffffff)
 
 #ifndef TASK_UNMAPPED_BASE
 #define TASK_UNMAPPED_BASE     UL(0x00000000)