HomeFreeBSD

Improve stack unwinding on i386 and amd64 after an IP fault.

Description

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

Details

Provenance
markjAuthored on
Reviewer
jhb
Differential Revision
D2859: ddb: improve amd64's stack unwinding after an IP fault
Parents
rS285774: Don't return undefined symbols to a DDB symbol lookup.
Branches
Unknown
Tags
Unknown