]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Improve stack unwinding on i386 and amd64 after an IP fault.
authorMark Johnston <markj@FreeBSD.org>
Tue, 21 Jul 2015 23:13:11 +0000 (23:13 +0000)
committerMark Johnston <markj@FreeBSD.org>
Tue, 21 Jul 2015 23:13:11 +0000 (23:13 +0000)
commitf8a757d016cf802511922c11b66560d3906f7838
treeaa9dcbd106a3b8a32ac9872b4de0bd3f519bbc23
parente31a60b4861854b24f2b7b8f406f429ad1d7f0bf
Improve stack unwinding on i386 and amd64 after an IP fault.

If we can't find a symbol corresponding to the faulting instruction, assume
that the previously-executed function is a call and attempt to find the
calling function using the return address on the stack. Otherwise we end
up associating the last stack frame with the current call, which is
incorrect and causes the unwinder to skip printing of the calling function,
resulting in a confusing backtrace.

Reviewed by: jhb
Sponsored by: EMC / Isilon Storage Division
Differential Revision: https://reviews.freebsd.org/D2859
sys/amd64/amd64/db_trace.c
sys/i386/i386/db_trace.c