This commit was manufactured by cvs2svn to create tag
[linux-2.6.git] / arch / ppc / kernel / process.c
index 4db1710..d9ab6a7 100644 (file)
@@ -321,7 +321,7 @@ void show_regs(struct pt_regs * regs)
        trap = TRAP(regs);
        if (trap == 0x300 || trap == 0x600)
                printk("DAR: %08lX, DSISR: %08lX\n", regs->dar, regs->dsisr);
-       printk("TASK = %p[%d] '%s' THREAD: %p\n",
+       printk("TASK = %p[%d] '%s' THREAD: %p",
               current, current->pid, current->comm, current->thread_info);
        printk("Last syscall: %ld ", current->thread.last_syscall);
 
@@ -370,10 +370,6 @@ void exit_thread(void)
                last_task_used_math = NULL;
        if (last_task_used_altivec == current)
                last_task_used_altivec = NULL;
-#ifdef CONFIG_SPE
-       if (last_task_used_spe == current)
-               last_task_used_spe = NULL;
-#endif
 }
 
 void flush_thread(void)
@@ -382,10 +378,6 @@ void flush_thread(void)
                last_task_used_math = NULL;
        if (last_task_used_altivec == current)
                last_task_used_altivec = NULL;
-#ifdef CONFIG_SPE
-       if (last_task_used_spe == current)
-               last_task_used_spe = NULL;
-#endif
 }
 
 void
@@ -430,6 +422,8 @@ copy_thread(int nr, unsigned long clone_flags, unsigned long usp,
        unsigned long sp = (unsigned long)p->thread_info + THREAD_SIZE;
        unsigned long childframe;
 
+       p->set_child_tid = p->clear_child_tid = NULL;
+
        CHECK_FULL_REGS(regs);
        /* Copy registers */
        sp -= sizeof(struct pt_regs);
@@ -488,10 +482,6 @@ void start_thread(struct pt_regs *regs, unsigned long nip, unsigned long sp)
                last_task_used_math = NULL;
        if (last_task_used_altivec == current)
                last_task_used_altivec = NULL;
-#ifdef CONFIG_SPE
-       if (last_task_used_spe == current)
-               last_task_used_spe = NULL;
-#endif
        memset(current->thread.fpr, 0, sizeof(current->thread.fpr));
        current->thread.fpscr = 0;
 #ifdef CONFIG_ALTIVEC
@@ -608,11 +598,8 @@ int sys_execve(unsigned long a0, unsigned long a1, unsigned long a2,
        preempt_enable();
        error = do_execve(filename, (char __user *__user *) a1,
                          (char __user *__user *) a2, regs);
-       if (error == 0) {
-               task_lock(current);
+       if (error == 0)
                current->ptrace &= ~PT_DTRACE;
-               task_unlock(current);
-       }
        putname(filename);
 out:
        return error;