Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Deadlock in dbghelp

34 views
Skip to first unread message

pbor

unread,
May 30, 2008, 2:39:00 AM5/30/08
to
I'm running a test application in vs2005 ide which is deadlocking while i
attempt to walk the stack. mOstly this works properly, but i just hit this
deadlock. What could i be doing wrong?

ntdll.dll!_KiFastSystemCallRet@0()
ntdll.dll!_ZwWaitForSingleObject@12() + 0xc bytes
ntdll.dll!_RtlpWaitForCriticalSection@4() + 0x8c bytes
ntdll.dll!_RtlEnterCriticalSection@4() + 0x46 bytes
ntdll.dll!_RtlAcquirePebLock@0() + 0x28 bytes
ntdll.dll!_RtlDosPathNameToNtPathName_Ustr@16() + 0xa6 bytes
ntdll.dll!_RtlDosPathNameToNtPathName_U@16() + 0x49 bytes
kernel32.dll!_FindFirstFileExW@24() + 0x8b bytes
kernel32.dll!_FindFirstFileW@8() + 0x16 bytes
dbghelp.dll!CheckDirForPdbs() + 0xd9 bytes
dbghelp.dll!diaLocatePdb() + 0x3e2 bytes
dbghelp.dll!diaGetPdb() + 0x207 bytes
dbghelp.dll!GetDebugData() + 0x2be bytes
dbghelp.dll!modload() + 0x305 bytes
dbghelp.dll!LoadSymbols() + 0x9a bytes
dbghelp.dll!_SymGetLineFromAddrW64@20() + 0x102 bytes

Jigar Mehta

unread,
May 30, 2008, 9:19:43 AM5/30/08
to
Hi pbor,

It may not be deadlock, have you waited long enough? It may be loading PDB
files (where is your PDB store, are you getting them from internet or network
location, if yes, are they accessible?)

Jigar Mehta

pbor

unread,
Jun 2, 2008, 9:46:04 AM6/2/08
to
Jigar,
Thanks for the advise but that was not the case. I just ran into (hopefully)
the same deadlock again. I took a good look at the callstacks and found that
actually two threads were accessing dbghelp.

Then it gets more complicated: the memory functions that dbghelp is using
were hooked back into my application which basically deadlocked on a
critical_section in my application....

Paul

Pat Styles [MSFT]

unread,
Jun 2, 2008, 11:18:59 AM6/2/08
to pbor
Hello Paul.

Dbghelp functionality does not work in multithreaded applications unless
the calls to it are protected by critical sections or the like. You can
see this in the MSDN documentation.

.pat styles [microsoft]

0 new messages