Date: Thu, 3 Aug 2006 04:31:36 GMT From: John Birrell <jb@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 103092 for review Message-ID: <200608030431.k734Va13056970@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=103092 Change 103092 by jb@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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200608030431.k734Va13056970>