]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Mark the return address of the call to ast() in the generic trap
authorPeter Grehan <grehan@FreeBSD.org>
Fri, 23 Dec 2005 13:05:27 +0000 (13:05 +0000)
committerPeter Grehan <grehan@FreeBSD.org>
Fri, 23 Dec 2005 13:05:27 +0000 (13:05 +0000)
commit78cb82148f80d4c58af2fbd196d0779b908b1c54
treeadae55e3d7e1d097e934d8bbd40da968892f9460
parent866196b69d3eea4762621c41c44f0ebb2f5e2296
Mark the return address of the call to ast() in the generic trap
handling code so the stack trace unwinders don't start trying to
go into user-space.

Found by trying to create core dumps with a KTR_COMPILE/KTR_GEOM
kernel, which results in a stack_save() call in the ast() coredump
path - this created a panic, and then calling 'trace' in ddb resulted
in the black screen of death after printing out most of the backtrace.
sys/powerpc/aim/trap_subr.S
sys/powerpc/powerpc/db_trace.c
sys/powerpc/powerpc/trap_subr.S