PERFORCE change 103092 for review

John Birrell jb at FreeBSD.org
Thu Aug 3 04:31:37 UTC 2006


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

Change 103092 by jb at jb_freebsd2 on 2006/08/03 04:31:05

	Save a few more registers as part of the debug information.
	
	These (finally) give us enough information to understand what is
	going on when a CPU goes of into the weeds. It is doing it because
	of a double trap caused by the curthread pointer in the per-cpu
	structure going bad (for a reason which hasn't been determined
	yet).

Affected files ...

.. //depot/projects/dtrace/src/sys/sun4v/sun4v/interrupt.S#5 edit

Differences ...

==== //depot/projects/dtrace/src/sys/sun4v/sun4v/interrupt.S#5 (text+ko) ====

@@ -448,6 +448,18 @@
 	rdpr	%tick, %g4
 	stxa    %g4, [PCPU(PAD) + 8]%asi
 
+	/* pcpu->pad[3] = %tl */
+	rdpr	%tl, %g4
+	stxa    %g4, [PCPU(PAD) + 24]%asi
+
+	/* pcpu->pad[4] = %tpc */
+	rdpr	%tpc, %g4
+	stxa    %g4, [PCPU(PAD) + 32]%asi
+
+	/* pcpu->pad[5] = %tnpc */
+	rdpr	%tnpc, %g4
+	stxa    %g4, [PCPU(PAD) + 40]%asi
+
 	/*
 	 * Increment a counter which might help us notice if we're
 	 * stuck in a loop. pcpu->pad[2] = count


More information about the p4-projects mailing list