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