uml: physical memory shouldn't include initial stack
PATCH 3/14 uml: physical memory shouldn't include initial stack
From 57c582f7eb25314e650f143c2c5141a0cc4172eb Mon Sep 17 00:00:00 2001
The top of physical memory should be below the initial process stack, not the top of the address space, at least for as long as the stack isn't known to the kernel VM system and appropriately reserved.
Cc "Christopher S. Aker" <[email protected]>
Signed-off-by Jeff Dike <[email protected]>
Cc WANG Cong <[email protected]>
Signed-off-by Andrew Morton <[email protected]>
Signed-off-by Linus Torvalds <[email protected]>
--- arch/um/kernel/um_arch.c | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-)
arch/um/kernel/um_arch.c +4 -1
@@ -259,6 +259,7 @@ int __init linux_main(int argc, char **argv)unsigned long avail, diff;unsigned long virtmem_size, max_physmem;unsigned int i, add; +unsigned long stack;char * mode;for (i =1 ; i < argc; i++) {
@@ -347,7 +348,9 @@ int __init linux_main(int argc, char **argv) } virtmem_size = physmem_size; - avail =TASK_SIZE - start_vm; + stack = (unsigned long ) argv; + stack &= ~(1024 *1024 -1 ); + avail = stack - start_vm;if (physmem_size > avail) virtmem_size = avail; end_vm = start_vm + virtmem_size;
Signature · 12 lines
1.5.5.1 ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ User-mode-linux-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel