Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 2 Nov 2003 15:05:47 -0800 (PST)
From:      Juli Mallett <jmallett@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 41142 for review
Message-ID:  <200311022305.hA2N5lUm042514@repoman.freebsd.org>

index | next in thread | raw e-mail

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

Change 41142 by jmallett@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.


help

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200311022305.hA2N5lUm042514>