DynamoRIO / DynamoRIO/drmemory

support using dbghelp!StackWalk64 to walk call stack

Open
#563 0 comments 0 reactions 0 assignees View on GitHub
Migrated Priority-Low Type-Feature Usability
Dominant language
C
Stars
2.7k
Forks
290
PR merge metrics
No merged PRs in 30d

Description

_From [bruen...@google.com](https://code.google.com/u/109494838902877177630/) on August 22, 2011 10:11:39_

xref issue #557 my new scheme for walking callstacks handles most fpo, but I'm avoiding any
expensive symbol lookups, and the debugger will likely do a better job in
some corner cases where unwind info is needed. this issue covers adding an
option to use dbghelp!StackWalk64 or other third-party stack walking
routines. if implemented there should be two options: one to use for
non-leak error reports, and another on leaks, since callstack walking on
every malloc for leak reports is much more performance-critical.

note that I briefly tried using dbghelp!StackWalk64 and found that it did
not seem to perform lazy symbol loading: only if I explicitly loaded
symbols up front in SymInitialize(), and examples of its usage sometimes
walk the whole module list themselves calling SymLoadModule64 explicitly.
in concert with drsyms I never got it working properly but I did not spend
much time on it.

there's also RtlCaptureStackBackTrace but I suspect it does not look at
symbol info

there's also IDiaStackWalker but it uses COM

_Original issue: http://code.google.com/p/drmemory/issues/detail?id=563_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.