PERFORCE change 41142 for review

Juli Mallett jmallett at FreeBSD.org
Sun Nov 2 15:05:50 PST 2003


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

Change 41142 by jmallett at jmallett_dalek on 2003/11/02 15:04:49

	If we run across a 32-bit TLB refill, then we're confused, but
	better to go right into trap than to call panic.

Affected files ...

.. //depot/projects/mips/sys/mips/mips/exception.S#6 edit

Differences ...

==== //depot/projects/mips/sys/mips/mips/exception.S#6 (text+ko) ====

@@ -141,15 +141,27 @@
 
 LEAF(TLBMissVector)
 	.set noat
-	dla	a0, 1f
-	dla	k0, panic
-	dmtc0	k0, MIPS_COP_0_EXC_PC
+	dsubu	sp, sp, TF_SIZE
+	dla	k0, 1f
+	j	exception_save_registers
+	move	k1, sp
+1:
+	/*
+	 * No turning back, and nothing we can do.  Just call into
+	 * trap and let it tell the user lovely things about how bad
+	 * their cache has been,
+	 */
+	mfc0	a1, MIPS_COP_0_CAUSE
+	dmfc0	a2, MIPS_COP_0_BAD_VADDR
+	jal	trap
+	move	a0, k1
+
+	jal	exception_restore_registers
+	move	a0, sp
+	daddu	sp, sp, TF_SIZE
 	eret
 	.set at
 VEND(TLBMissVector)
-	.data
-1:	.asciiz	"32-bit TLB miss!?\n"
-	.text
 
 /*
  * XXX kernel only.  For now that makes sense.


More information about the p4-projects mailing list