summaryrefslogtreecommitdiff
path: root/arch/arm/kernel/sys_arm.c
diff options
context:
space:
mode:
authorRussell King <rmk@dyn-67.arm.linux.org.uk>2005-05-05 12:11:00 (GMT)
committerRussell King <rmk@dyn-67.arm.linux.org.uk>2005-05-05 12:11:00 (GMT)
commit4f7a18124c1a44858fb74a1c4234015009952959 (patch)
tree978f55875b776c83ebcfed24737784ac098d1a4e /arch/arm/kernel/sys_arm.c
parent897f5ab2cd733a77a2279268262919caa8154b9d (diff)
downloadlinux-4f7a18124c1a44858fb74a1c4234015009952959.tar.xz
[PATCH] ARM: Fix kernel stack offset calculations
Various places in the ARM kernel implicitly assumed that kernel stacks are always 8K due to hard coded constants. Replace these constants with definitions. Correct the allowable range of kernel stack pointer values within the allocation. Arrange for the entire kernel stack to be zeroed, not just the upper 4K if CONFIG_DEBUG_STACK_USAGE is set. Signed-off-by: Russell King <rmk@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/kernel/sys_arm.c')
-rw-r--r--arch/arm/kernel/sys_arm.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/arm/kernel/sys_arm.c b/arch/arm/kernel/sys_arm.c
index ef32577..f897ce2 100644
--- a/arch/arm/kernel/sys_arm.c
+++ b/arch/arm/kernel/sys_arm.c
@@ -302,7 +302,7 @@ long execve(const char *filename, char **argv, char **envp)
"b ret_to_user"
:
: "r" (current_thread_info()),
- "Ir" (THREAD_SIZE - 8 - sizeof(regs)),
+ "Ir" (THREAD_START_SP - sizeof(regs)),
"r" (&regs),
"Ir" (sizeof(regs))
: "r0", "r1", "r2", "r3", "ip", "memory");