diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2012-10-21 22:33:39 -0400 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2012-10-21 22:33:39 -0400 |
commit | ab75819d3942a34d151a34fd43f346d5d8a48148 (patch) | |
tree | 60352be9c9af301e7a29567c8915490e48641957 /arch | |
parent | ea516b11545afa5b1420621981c1411a62bef87e (diff) |
powerpc: make fork_idle() take the common "kernel thread" path in copy_thread()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/powerpc/kernel/process.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/powerpc/kernel/process.c b/arch/powerpc/kernel/process.c index 3665d287780..f6d244db920 100644 --- a/arch/powerpc/kernel/process.c +++ b/arch/powerpc/kernel/process.c @@ -745,7 +745,7 @@ int copy_thread(unsigned long clone_flags, unsigned long usp, /* Copy registers */ sp -= sizeof(struct pt_regs); childregs = (struct pt_regs *) sp; - if (!regs) { + if (unlikely(p->flags & PF_KTHREAD)) { struct thread_info *ti = (void *)task_stack_page(p); memset(childregs, 0, sizeof(struct pt_regs)); childregs->gpr[1] = sp + sizeof(struct pt_regs); |