aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/kernel/process.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/powerpc/kernel/process.c')
-rw-r--r--arch/powerpc/kernel/process.c19
1 files changed, 11 insertions, 8 deletions
diff --git a/arch/powerpc/kernel/process.c b/arch/powerpc/kernel/process.c
index 7f8ec1de0ace..710f400476de 100644
--- a/arch/powerpc/kernel/process.c
+++ b/arch/powerpc/kernel/process.c
@@ -711,18 +711,21 @@ release_thread(struct task_struct *t)
711} 711}
712 712
713/* 713/*
714 * This gets called before we allocate a new thread and copy 714 * this gets called so that we can store coprocessor state into memory and
715 * the current task into it. 715 * copy the current task into the new thread.
716 */ 716 */
717void prepare_to_copy(struct task_struct *tsk) 717int arch_dup_task_struct(struct task_struct *dst, struct task_struct *src)
718{ 718{
719 flush_fp_to_thread(current); 719 flush_fp_to_thread(src);
720 flush_altivec_to_thread(current); 720 flush_altivec_to_thread(src);
721 flush_vsx_to_thread(current); 721 flush_vsx_to_thread(src);
722 flush_spe_to_thread(current); 722 flush_spe_to_thread(src);
723#ifdef CONFIG_HAVE_HW_BREAKPOINT 723#ifdef CONFIG_HAVE_HW_BREAKPOINT
724 flush_ptrace_hw_breakpoint(tsk); 724 flush_ptrace_hw_breakpoint(src);
725#endif /* CONFIG_HAVE_HW_BREAKPOINT */ 725#endif /* CONFIG_HAVE_HW_BREAKPOINT */
726
727 *dst = *src;
728 return 0;
726} 729}
727 730
728/* 731/*