|
@@ -110,13 +110,18 @@ void release_thread(struct task_struct *);
|
|
|
#define TASK_SIZE_128TB (0x0000800000000000UL)
|
|
|
#define TASK_SIZE_512TB (0x0002000000000000UL)
|
|
|
|
|
|
-#ifdef CONFIG_PPC_BOOK3S_64
|
|
|
+/*
|
|
|
+ * For now 512TB is only supported with book3s and 64K linux page size.
|
|
|
+ */
|
|
|
+#if defined(CONFIG_PPC_BOOK3S_64) && defined(CONFIG_PPC_64K_PAGES)
|
|
|
/*
|
|
|
* Max value currently used:
|
|
|
*/
|
|
|
-#define TASK_SIZE_USER64 TASK_SIZE_512TB
|
|
|
+#define TASK_SIZE_USER64 TASK_SIZE_512TB
|
|
|
+#define DEFAULT_MAP_WINDOW_USER64 TASK_SIZE_128TB
|
|
|
#else
|
|
|
-#define TASK_SIZE_USER64 TASK_SIZE_64TB
|
|
|
+#define TASK_SIZE_USER64 TASK_SIZE_64TB
|
|
|
+#define DEFAULT_MAP_WINDOW_USER64 TASK_SIZE_64TB
|
|
|
#endif
|
|
|
|
|
|
/*
|
|
@@ -132,7 +137,7 @@ void release_thread(struct task_struct *);
|
|
|
* space during mmap's.
|
|
|
*/
|
|
|
#define TASK_UNMAPPED_BASE_USER32 (PAGE_ALIGN(TASK_SIZE_USER32 / 4))
|
|
|
-#define TASK_UNMAPPED_BASE_USER64 (PAGE_ALIGN(TASK_SIZE_128TB / 4))
|
|
|
+#define TASK_UNMAPPED_BASE_USER64 (PAGE_ALIGN(DEFAULT_MAP_WINDOW_USER64 / 4))
|
|
|
|
|
|
#define TASK_UNMAPPED_BASE ((is_32bit_task()) ? \
|
|
|
TASK_UNMAPPED_BASE_USER32 : TASK_UNMAPPED_BASE_USER64 )
|
|
@@ -143,21 +148,15 @@ void release_thread(struct task_struct *);
|
|
|
* with 128TB and conditionally enable upto 512TB
|
|
|
*/
|
|
|
#ifdef CONFIG_PPC_BOOK3S_64
|
|
|
-#define DEFAULT_MAP_WINDOW ((is_32bit_task()) ? \
|
|
|
- TASK_SIZE_USER32 : TASK_SIZE_128TB)
|
|
|
+#define DEFAULT_MAP_WINDOW ((is_32bit_task()) ? \
|
|
|
+ TASK_SIZE_USER32 : DEFAULT_MAP_WINDOW_USER64)
|
|
|
#else
|
|
|
#define DEFAULT_MAP_WINDOW TASK_SIZE
|
|
|
#endif
|
|
|
|
|
|
#ifdef __powerpc64__
|
|
|
|
|
|
-#ifdef CONFIG_PPC_BOOK3S_64
|
|
|
-/* Limit stack to 128TB */
|
|
|
-#define STACK_TOP_USER64 TASK_SIZE_128TB
|
|
|
-#else
|
|
|
-#define STACK_TOP_USER64 TASK_SIZE_USER64
|
|
|
-#endif
|
|
|
-
|
|
|
+#define STACK_TOP_USER64 DEFAULT_MAP_WINDOW_USER64
|
|
|
#define STACK_TOP_USER32 TASK_SIZE_USER32
|
|
|
|
|
|
#define STACK_TOP (is_32bit_task() ? \
|