[PATCH] sh64: 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>
This commit is contained in:
parent
7fdf0d7a20
commit
ee8c1dd443
@ -744,7 +744,7 @@ int copy_thread(int nr, unsigned long clone_flags, unsigned long usp,
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
/* Copy from sh version */
|
/* Copy from sh version */
|
||||||
childregs = ((struct pt_regs *)(THREAD_SIZE + (unsigned long) p->thread_info )) - 1;
|
childregs = (struct pt_regs *)(THREAD_SIZE + task_stack_page(p)) - 1;
|
||||||
|
|
||||||
*childregs = *regs;
|
*childregs = *regs;
|
||||||
|
|
||||||
@ -752,7 +752,7 @@ int copy_thread(int nr, unsigned long clone_flags, unsigned long usp,
|
|||||||
childregs->regs[15] = usp;
|
childregs->regs[15] = usp;
|
||||||
p->thread.uregs = childregs;
|
p->thread.uregs = childregs;
|
||||||
} else {
|
} else {
|
||||||
childregs->regs[15] = (unsigned long)p->thread_info + THREAD_SIZE;
|
childregs->regs[15] = (unsigned long)task_stack_page(p) + THREAD_SIZE;
|
||||||
}
|
}
|
||||||
|
|
||||||
childregs->regs[9] = 0; /* Set return value for child */
|
childregs->regs[9] = 0; /* Set return value for child */
|
||||||
|
@ -174,7 +174,7 @@ void evt_debug(int evt, int ret_addr, int event, int tra, struct pt_regs *regs)
|
|||||||
struct ring_node *rr;
|
struct ring_node *rr;
|
||||||
|
|
||||||
pid = current->pid;
|
pid = current->pid;
|
||||||
stack_bottom = (unsigned long) current->thread_info;
|
stack_bottom = (unsigned long) task_stack_page(current);
|
||||||
asm volatile("ori r15, 0, %0" : "=r" (sp));
|
asm volatile("ori r15, 0, %0" : "=r" (sp));
|
||||||
rr = event_ring + event_ptr;
|
rr = event_ring + event_ptr;
|
||||||
rr->evt = evt;
|
rr->evt = evt;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user