m68knommu: remove size limit on non-MMU TASK_SIZE
authorGreg Ungerer <gerg@uclinux.org>
Mon, 24 May 2010 01:22:05 +0000 (11:22 +1000)
committerGreg Ungerer <gerg@uclinux.org>
Mon, 24 May 2010 03:29:54 +0000 (13:29 +1000)
The TASK_SIZE define is used in some places as a limit on the size of
the virtual address space of a process. On non-MMU systems those addresses
used in comparison will be physical addresses, and they could be anywhere
in the 32bit physical address space. So for !CONFIG_MMU systems set the
TASK_SIZE to the maximum physical address.

Signed-off-by: Greg Ungerer <gerg@uclinux.org>
arch/m68k/include/asm/processor.h

index cbd3d47..7a6a759 100644 (file)
@@ -44,11 +44,15 @@ static inline void wrusp(unsigned long usp)
  * User space process size: 3.75GB. This is hardcoded into a few places,
  * so don't change it unless you know what you are doing.
  */
+#ifdef CONFIG_MMU
 #ifndef CONFIG_SUN3
 #define TASK_SIZE      (0xF0000000UL)
 #else
 #define TASK_SIZE      (0x0E000000UL)
 #endif
+#else
+#define TASK_SIZE      (0xFFFFFFFFUL)
+#endif
 
 #ifdef __KERNEL__
 #define STACK_TOP      TASK_SIZE