DynamoRIO / DynamoRIO/dynamorio

automate support for windbg > 6.3

Open
#564 0 comments 0 reactions 0 assignees View on GitHub
Migrated OpSys-Windows Priority-Medium Usability
Dominant language
C
Stars
3.2k
Forks
629
Avg merge
2d 15h
Merged PRs (30d)
31

Description

_From [bruen...@google.com](https://code.google.com/u/109494838902877177630/) on September 28, 2011 11:01:48_

windbg > 6.3 has never liked DR's stack and its default callstacks are just empty. I don't recall whether we really investigated whether it was b/c it's not the default stack or what.

private libraries make this even worse.

even w/ my automation from issue #522 windbg 6.11 isn't happy w/ the libraries
(bogus end addr):

0:000> lm
start end module name
00090000 00090000 KERNELBASE_90000 (deferred)
00ed0000 00efa000 malloc C (private pdb symbols) C:\src\drmemory\git\build_drmemory\tests\malloc.pdb
00f00000 00f00000 KERNEL32_f00000 (deferred)
10000000 10000000 drmemorylib (private pdb symbols) c:\src\drmemory\git\build_drmemory/bin/debug\drmemorylib.pdb
6e9a0000 6e9a0000 dbghelp (deferred)
73d10000 73d10000 drsyms (deferred)
73d20000 73d20000 dynamorio (deferred)
74ef0000 74f36000 KERNELBASE (pdb symbols) c:\src\symbols\wkernelbase.pdb\20019086DAFA4AD5B2C8E777BEC777851\wkernelbase.pdb
763c0000 764c0000 kernel32 (pdb symbols) c:\src\symbols\wkernel32.pdb\0EB73428EC4E430FB8EDD94C5946855B2\wkernel32.pdb
76a80000 76a80000 msvcrt (deferred)
77090000 77210000 ntdll (pdb symbols) c:\src\symbols\wntdll.pdb\FC9DB05873374DB5985BABAA3F8F734F2\wntdll.pdb

6.3:
0:000> kn
# ChildEBP RetAddr
00 1b7a7aac 72db825c ntdll!ZwRaiseHardError+0x12
01 1b7a7af0 72da265b dynamorio!nt_messagebox+0x7c [e:\src\dr\git\src\core\win32\ntdll.c @ 3296]
02 1b7a8b38 1014c54c dynamorio!dr_messagebox+0x8b [e:\src\dr\git\src\core\x86\instrument.c @ 3160]
03 1b7a8b44 101263f4 drmemorylib!wait_for_user+0xc [e:\src\drmemory\git\src\common\utils.c @ 96]
04 1b7a90d0 1011febb drmemorylib!report_error+0x6534 [e:\src\drmemory\git\src\drmemory\report.c @ 1801]
05 1b7a9100 100227bb drmemorylib!report_unaddressable_access+0x2b [e:\src\drmemory\git\src\drmemory\report.c @ 1814]
06 1b7a95c8 1001e572 drmemorylib!handle_mem_ref+0x3e6b [e:\src\drmemory\git\src\drmemory\readwrite.c @ 3137]
07 1b7a9780 100123ec drmemorylib!check_mem_opnd+0x1ba2 [e:\src\drmemory\git\src\drmemory\readwrite.c @ 2856]
08 1b7a9d48 10018546 drmemorylib!slow_path_with_mc+0x286c [e:\src\drmemory\git\src\drmemory\readwrite.c @ 1981]
09 1b7a9eb0 1b9b00b9 drmemorylib!slow_path+0x46 [e:\src\drmemory\git\src\drmemory\readwrite.c @ 2146]
WARNING: Frame IP not in any known module. Following frames may be wrong.
0a 00b9fbc0 00fe2314 0x1b9b00b9
**\* ERROR: Symbol file could not be found. Defaulted to export symbols for C:\Windows\syswow64\kernel32.dll -
0b 00b9fc08 7743339a malloc!__tmainCRTStartup+0xfb [f:\dd\vctools\crt_bld\self_x86\crt\src\crt0.c @ 266]
0c 00b9fc14 77aa9ed2 kernel32!BaseThreadInitThunk+0x12
0d 00b9fc54 77aa9ea5 ntdll!__RtlUserThreadStart+0x70
0e 00b9fc6c 00000000 ntdll!_RtlUserThreadStart+0x1b
0:000> dds esp
1b7a7aac 77a91606 ntdll!ZwRaiseHardError+0x12
1b7a7ab0 72db825c dynamorio!nt_messagebox+0x7c [e:\src\dr\git\src\core\win32\ntdll.c @ 3296]

6.11:
0:000> kn
# ChildEBP RetAddr
00 168d8b44 00000000 ntdll!NtRaiseHardError+0x12
0:000> kn =esp esp eip
# ChildEBP RetAddr
00 25de7acc 770f727f ntdll!NtRaiseHardError+0x12
01 25de7ae8 00000000 ntdll!_vsnprintf+0x18
0:000> dds esp
168d7aac 770b15a6 ntdll!NtRaiseHardError+0x12
168d7ab0 73db829c

6.11 -no_hide:
0:000> kn
# ChildEBP RetAddr
00 1a278b44 00000000 ntdll!NtRaiseHardError+0x12
0:000> dds esp
1a277aac 770b15a6 ntdll!NtRaiseHardError+0x12
1a277ab0 73db829c dynamorio!nt_messagebox+0x7c [c:\src\dr\git\src\core\win32\ntdll.c @ 3296]
0:000> kn =esp esp eip
# ChildEBP RetAddr
00 1a277aac 73db829c ntdll!NtRaiseHardError+0x12
01 1a277af0 73da266b dynamorio!nt_messagebox+0x7c [c:\src\dr\git\src\core\win32\ntdll.c @ 3296]
02 1a278b74 73d7982a dynamorio!dr_messagebox+0x8b [c:\src\dr\git\src\core\x86\instrument.c @ 3160]
03 1a278d7c 73d87cee dynamorio!decode_operand+0x23a [c:\src\dr\git\src\core\x86\decode.c @ 1473]
04 1a278df4 73d87cee dynamorio!instr_init+0xe [c:\src\dr\git\src\core\x86\instr.c @ 1715]
05 1a278e18 73d62b80 dynamorio!instr_init+0xe [c:\src\dr\git\src\core\x86\instr.c @ 1715]
06 1a278e38 73d87d49 dynamorio!heap_free+0x40 [c:\src\dr\git\src\core\heap.c @ 3561]
07 1a278f1c 73d62b80 dynamorio!instr_free+0x49 [c:\src\dr\git\src\core\x86\instr.c @ 1739]
08 1a278f5c 73d797e5 dynamorio!heap_free+0x40 [c:\src\dr\git\src\core\heap.c @ 3561]
09 1a2790dc 0103a82b dynamorio!decode_operand+0x1f5 [c:\src\dr\git\src\core\x86\decode.c @ 1459]
WARNING: Frame IP not in any known module. Following frames may be wrong.
0a 1a2790f0 00000000 0x103a82b
0:000> $> kn =esp esp eip
# ChildEBP RetAddr
00 1a277acc 770f727f ntdll!NtRaiseHardError+0x12
01 1a277ae8 00000000 ntdll!_vsnprintf+0x18

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

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.