Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

support using dbghelp!StackWalk64 to walk call stack #563

Open
derekbruening opened this issue Nov 28, 2014 · 0 comments
Open

support using dbghelp!StackWalk64 to walk call stack #563

derekbruening opened this issue Nov 28, 2014 · 0 comments

Comments

@derekbruening
Copy link
Contributor

From bruen...@google.com 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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant