[PATCH] sh: 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
cafcfcaa60
commit
308a792f7c
|
@ -270,7 +270,7 @@ int copy_thread(int nr, unsigned long clone_flags, unsigned long usp,
|
||||||
if (user_mode(regs)) {
|
if (user_mode(regs)) {
|
||||||
childregs->regs[15] = usp;
|
childregs->regs[15] = usp;
|
||||||
} else {
|
} else {
|
||||||
childregs->regs[15] = (unsigned long)p->thread_info + THREAD_SIZE;
|
childregs->regs[15] = (unsigned long)task_stack_page(p) + THREAD_SIZE;
|
||||||
}
|
}
|
||||||
if (clone_flags & CLONE_SETTLS) {
|
if (clone_flags & CLONE_SETTLS) {
|
||||||
childregs->gbr = childregs->regs[0];
|
childregs->gbr = childregs->regs[0];
|
||||||
|
|
|
@ -93,11 +93,11 @@ extern void show_regs(struct pt_regs *);
|
||||||
|
|
||||||
#ifdef CONFIG_SH_DSP
|
#ifdef CONFIG_SH_DSP
|
||||||
#define task_pt_regs(task) \
|
#define task_pt_regs(task) \
|
||||||
((struct pt_regs *) ((unsigned long)(task)->thread_info + THREAD_SIZE \
|
((struct pt_regs *) (task_stack_page(task) + THREAD_SIZE \
|
||||||
- sizeof(struct pt_dspregs) - sizeof(unsigned long)) - 1)
|
- sizeof(struct pt_dspregs) - sizeof(unsigned long)) - 1)
|
||||||
#else
|
#else
|
||||||
#define task_pt_regs(task) \
|
#define task_pt_regs(task) \
|
||||||
((struct pt_regs *) ((unsigned long)(task)->thread_info + THREAD_SIZE \
|
((struct pt_regs *) (task_stack_page(task) + THREAD_SIZE \
|
||||||
- sizeof(unsigned long)) - 1)
|
- sizeof(unsigned long)) - 1)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue