On 01/05/14 18:50, James Bottomley wrote: > >> + >> +config MAX_STACK_SIZE_MB >> + int "Maximum user stack size (MB)" >> + default 80 >> + range 8 256 if METAG >> + range 8 2048 >> + depends on STACK_GROWSUP >> + help >> + This is the maximum stack size in Megabytes in the VM layout of user >> + processes when the stack grows upwards (currently only on parisc and >> + metag arch). The stack will be located at the highest memory address >> + minus the given value, unless the RLIMIT_STACK hard limit is changed >> + to a smaller value in which case that is used. >> + >> + A sane initial value is 80 MB. > > There's one final issue with this: placement of the stack only really > matters on 32 bits. We have three expanding memory areas: stack, heap > and maps. On 64 bits these are placed well separated from each other on > 64 bits, so an artificial limit like this doesn't matter. Does the following fixup diff look reasonable? It forces MAX_STACK_SIZE_MB to 1024 and hides the Kconfig option for 64BIT, effectively leaving the behaviour unchanged in that case. diff --git a/mm/Kconfig b/mm/Kconfig index e80075979530..b0307f737bd7 100644 --- a/mm/Kconfig +++ b/mm/Kconfig @@ -583,7 +583,8 @@ config GENERIC_EARLY_IOREMAP bool config MAX_STACK_SIZE_MB - int "Maximum user stack size (MB)" + int "Maximum user stack size (MB)" if !64BIT + default 1024 if 64BIT default 80 range 8 256 if METAG range 8 2048 Thanks James