X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=arch%2Fsh64%2Fkernel%2Fprocess.c;h=e3f509ea6ec3b1e2d87dc64753d34caf9fc29291;hb=6a77f38946aaee1cd85eeec6cf4229b204c15071;hp=13cec35796ab9910408f53c64b43dc43d7087145;hpb=c7b5ebbddf7bcd3651947760f423e3783bbe6573;p=linux-2.6.git diff --git a/arch/sh64/kernel/process.c b/arch/sh64/kernel/process.c index 13cec3579..e3f509ea6 100644 --- a/arch/sh64/kernel/process.c +++ b/arch/sh64/kernel/process.c @@ -338,7 +338,7 @@ void default_idle(void) } } -void cpu_idle(void *unused) +void cpu_idle(void) { default_idle(); } @@ -688,7 +688,7 @@ void flush_thread(void) last_task_used_math = NULL; } /* Force FPU state to be reinitialised after exec */ - current->used_math = 0; + clear_used_math(); #endif /* if we are a kernel thread, about to change to user thread, @@ -713,7 +713,7 @@ int dump_fpu(struct pt_regs *regs, elf_fpregset_t *fpu) int fpvalid; struct task_struct *tsk = current; - fpvalid = tsk->used_math; + fpvalid = !!tsk_used_math(tsk); if (fpvalid) { if (current == last_task_used_math) { grab_fpu(); @@ -765,9 +765,6 @@ int copy_thread(int nr, unsigned long clone_flags, unsigned long usp, childregs->regs[9] = 0; /* Set return value for child */ childregs->sr |= SR_FD; /* Invalidate FPU flag */ - /* From sh */ - p->set_child_tid = p->clear_child_tid = NULL; - p->thread.sp = (unsigned long) childregs; p->thread.pc = (unsigned long) ret_from_fork; @@ -862,8 +859,11 @@ asmlinkage int sys_execve(char *ufilename, char **uargv, (char __user * __user *)uargv, (char __user * __user *)uenvp, pregs); - if (error == 0) + if (error == 0) { + task_lock(current); current->ptrace &= ~PT_DTRACE; + task_unlock(current); + } putname(filename); out: unlock_kernel();