From: guoren@kernel.org guoren@kernel.org
Sent: 21 December 2023 15:47
From: Guo Ren guoren@linux.alibaba.com
When the task is in COMPAT mode, the arch_get_mmap_end should be 2GB, not TASK_SIZE_64. The TASK_SIZE has contained is_compat_mode() detection, so change the definition of STACK_TOP_MAX to TASK_SIZE directly.
Why 2G ?
IIRC for 32-bit native x86 the limit is 3G, but in compat mode it is (just under) 4G.
There is a special mmap option (for programs like wine) to limit mmap() to 2G.
David
- Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK Registration No: 1397386 (Wales)