patch-2.3.45 linux/arch/ppc/kernel/traps.c

Next file: linux/arch/ppc/lib/string.S
Previous file: linux/arch/ppc/kernel/syscalls.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.3.44/linux/arch/ppc/kernel/traps.c linux/arch/ppc/kernel/traps.c
@@ -118,11 +118,11 @@
 		default:
 			printk("Unknown values in msr\n");
 		}
+		show_regs(regs);
+		print_backtrace((unsigned long *)regs->gpr[1]);
 #if defined(CONFIG_XMON) || defined(CONFIG_KGDB)
 		debugger(regs);
 #endif
-		show_regs(regs);
-		print_backtrace((unsigned long *)regs->gpr[1]);
 		panic("machine check");
 	}
 	_exception(SIGSEGV, regs);	
@@ -141,44 +141,6 @@
 	print_backtrace((unsigned long *)regs->gpr[1]);
 	panic("System Management Interrupt");
 }
-
-#if defined(CONFIG_ALTIVEC)
-void
-AltiVecUnavailable(struct pt_regs *regs)
-{
-	/*
-	 * This should be changed so we don't take a trap if coming
-	 * back when last_task_used_altivec == current.  We should also
-	 * allow the kernel to use the altivec regs on UP to store tasks
-	 * regs during switch
-	 *  -- Cort
-	 */
-	if ( regs->msr & MSR_VEC )
-	{
-		show_regs(regs);
-		panic("AltiVec trap with Altivec enabled!\n");
-	}
-		
-	if ( !user_mode(regs) )
-	{
-		show_regs(regs);
-		panic("Kernel Used Altivec with MSR_VEC off!\n");
-	}
-
-	if ( last_task_used_altivec != current )
-	{
-		if ( last_task_used_altivec )
-			giveup_altivec(current);
-		load_up_altivec(current);
-		/* on SMP we always save/restore on switch */
-#ifndef __SMP__		
-		last_task_used_altivec = current;
-#endif		
-	}
-	/* enable altivec for the task on return */
-	regs->msr |= MSR_VEC;
-}
-#endif /* CONFIG_ALTIVEC */
 
 void
 UnknownException(struct pt_regs *regs)

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)