* [PATCH 27/50] m68k: task_stack_page()
@ 2006-01-03 21:07 Al Viro
0 siblings, 0 replies; only message in thread
From: Al Viro @ 2006-01-03 21:07 UTC (permalink / raw)
To: torvalds; +Cc: linux-kernel, linux-arch
References: <20060103210515.5135@ftp.linux.org.uk>
In-Reply-To: <20060103210515.5135@ftp.linux.org.uk>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
---
arch/m68k/kernel/process.c | 7 +++----
1 files changed, 3 insertions(+), 4 deletions(-)
f7013b290c221e23786a21d2d5722a460dd4a52d
diff --git a/arch/m68k/kernel/process.c b/arch/m68k/kernel/process.c
index 13d1093..3f9cb55 100644
--- a/arch/m68k/kernel/process.c
+++ b/arch/m68k/kernel/process.c
@@ -238,10 +238,9 @@ int copy_thread(int nr, unsigned long cl
{
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;
@@ -386,7 +385,7 @@ unsigned long get_wchan(struct task_stru
if (!p || p == current || p->state == TASK_RUNNING)
return 0;
- stack_page = (unsigned long)(p->thread_info);
+ stack_page = (unsigned long)task_stack_page(p);
fp = ((struct switch_stack *)p->thread.ksp)->a6;
do {
if (fp < stack_page+sizeof(struct thread_info) ||
--
0.99.9.GIT
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2006-01-03 21:24 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-01-03 21:07 [PATCH 27/50] m68k: task_stack_page() Al Viro
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®