powerpc: Move THREAD_SHIFT config to Kconfig
authorHamish Martin <hamish.martin@alliedtelesis.co.nz>
Fri, 24 Feb 2017 00:52:09 +0000 (13:52 +1300)
committerMichael Ellerman <mpe@ellerman.id.au>
Mon, 20 Mar 2017 08:02:49 +0000 (19:02 +1100)
Shift the logic for defining THREAD_SHIFT logic to Kconfig in order to
allow override by users.

Signed-off-by: Hamish Martin <hamish.martin@alliedtelesis.co.nz>
Reviewed-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/Kconfig
arch/powerpc/include/asm/thread_info.h

index 97a8bc8a095ce4199ad2e4e0c88c2933fc3b6987..45724923a69cc26306548f57984b1a1ec096d598 100644 (file)
@@ -678,6 +678,16 @@ config PPC_256K_PAGES
 
 endchoice
 
+config THREAD_SHIFT
+       int "Thread shift" if EXPERT
+       range 13 15
+       default "15" if PPC_256K_PAGES
+       default "14" if PPC64
+       default "13"
+       help
+         Used to define the stack size. The default is almost always what you
+         want. Only change this if you know what you are doing.
+
 config FORCE_MAX_ZONEORDER
        int "Maximum zone order"
        range 8 9 if PPC64 && PPC_64K_PAGES
index 87e4b2d8dcd47ca49cc2c6f68baa5dbe34a8db32..2e17d668c472fc4979c9ed247129deed49700e6b 100644 (file)
 
 #ifdef __KERNEL__
 
-/* We have 8k stacks on ppc32 and 16k on ppc64 */
-
-#if defined(CONFIG_PPC64)
-#define THREAD_SHIFT           14
-#elif defined(CONFIG_PPC_256K_PAGES)
-#define THREAD_SHIFT           15
-#else
-#define THREAD_SHIFT           13
-#endif
+#define THREAD_SHIFT           CONFIG_THREAD_SHIFT
 
 #define THREAD_SIZE            (1 << THREAD_SHIFT)