From: Tkhai Kirill Date: Fri, 29 Jun 2012 02:55:25 +0000 (+0000) Subject: sparc32, copy_thread: Clear TIF_USEDFPU flag of created task instead of current X-Git-Tag: upstream/snapshot3+hdmi~6949^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=427f23cb3abc21c3784df8ae907c4c3a31d885d1;p=platform%2Fadaptation%2Frenesas_rcar%2Frenesas_kernel.git sparc32, copy_thread: Clear TIF_USEDFPU flag of created task instead of current FPU state is saved into task_struct of created task. Current task continues use of the state, so it needs TIF_USEDFPU flag is not cleared. Created task receives fresh FPU and cleared TIF_USEFPU flag is required for it. Signed-off-by: Kirill Tkhai Signed-off-by: David S. Miller --- diff --git a/arch/sparc/kernel/process_32.c b/arch/sparc/kernel/process_32.c index cb36e82..14006d8 100644 --- a/arch/sparc/kernel/process_32.c +++ b/arch/sparc/kernel/process_32.c @@ -333,9 +333,6 @@ int copy_thread(unsigned long clone_flags, unsigned long sp, put_psr(get_psr() | PSR_EF); fpsave(&p->thread.float_regs[0], &p->thread.fsr, &p->thread.fpqueue[0], &p->thread.fpqdepth); -#ifdef CONFIG_SMP - clear_thread_flag(TIF_USEDFPU); -#endif } /* @@ -413,6 +410,7 @@ int copy_thread(unsigned long clone_flags, unsigned long sp, #ifdef CONFIG_SMP /* FPU must be disabled on SMP. */ childregs->psr &= ~PSR_EF; + clear_tsk_thread_flag(p, TIF_USEDFPU); #endif /* Set the return value for the child. */