PERFORCE change 32740 for review

Juli Mallett jmallett at FreeBSD.org
Sat Jun 7 04:33:06 PDT 2003


http://perforce.freebsd.org/chv.cgi?CH=32740

Change 32740 by jmallett at jmallett_dalek on 2003/06/07 04:32:03

	Call TLBMod (and others, in time) handler before deciding this is
	quite a _fatal_ trap.

Affected files ...

.. //depot/projects/mips/sys/mips/mips/trap.c#8 edit

Differences ...

==== //depot/projects/mips/sys/mips/mips/trap.c#8 (text+ko) ====

@@ -84,6 +84,20 @@
 
 	code = (cause & MIPS3_CR_EXC_CODE) >> MIPS_CR_EXC_CODE_SHIFT;
 	kernelmode = (tf->tf_regs[TF_SR] & MIPS_SR_KSU_USER) == 0;
+
+	/*
+	 * Handle that which we can.
+	 */
+	switch (code) {
+	case T_TLB_MOD:
+		/* XXX Kernel only. */
+		tlb_modified(badvaddr);
+		return;
+	default:
+		/* Fatal! */
+		break;
+	}
+
 	printf("\n\nFatal trap type %d in %s mode:",
 	       code, kernelmode ? "kernel" : "user");
 	if (code <= MAXTRAPID && code >= 0) {
@@ -109,10 +123,6 @@
 		kdb_trap(code, tf);
 		break;
 #endif
-	case T_TLB_MOD:
-		/* XXX Kernel only. */
-		pmap_tlb_modified(badvaddr);
-		return;
 	default:
 		goto dopanic;
 	}


More information about the p4-projects mailing list