summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAl Viro <viro@ftp.linux.org.uk>2006-01-12 10:05:54 +0100
committerLinus Torvalds <torvalds@g5.osdl.org>2006-01-12 18:08:55 +0100
commit513091ba7e4a8b498632d7913ff9408ebbca6235 (patch)
treecb460fb97713839a33cc0df61a336d6884990f4b
parent[PATCH] m68k: task_stack_page() (diff)
downloadlinux-513091ba7e4a8b498632d7913ff9408ebbca6235.tar.xz
linux-513091ba7e4a8b498632d7913ff9408ebbca6235.zip
[PATCH] m68knommu: task_stack_page()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--arch/m68knommu/kernel/process.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/arch/m68knommu/kernel/process.c b/arch/m68knommu/kernel/process.c
index 8b3cf57ba706..99bf43824795 100644
--- a/arch/m68knommu/kernel/process.c
+++ b/arch/m68knommu/kernel/process.c
@@ -198,10 +198,9 @@ int copy_thread(int nr, unsigned long clone_flags,
{
struct pt_regs * childregs;
struct switch_stack * childstack, *stack;
- unsigned long stack_offset, *retp;
+ unsigned long *retp;
- stack_offset = THREAD_SIZE - sizeof(struct pt_regs);
- childregs = (struct pt_regs *) ((unsigned long) p->thread_info + stack_offset);
+ childregs = (struct pt_regs *) (task_stack_page(p) + THREAD_SIZE) - 1;
*childregs = *regs;
childregs->d0 = 0;