kvn format with source information

Question:
Is there a way to enable the printing of the source code information side by side with each DLL!FunctionName when seeing the stack?

An older WinDBG seems to have that mode as default. All versions since no longer print them like that, which is really useful.

Sample outuputs

The following are the result of !analye -v on the same minidump using two different versions of WinDBG, the latest from Win8 SDK and one that I believe I downloaded back in 2008.

Both cases, I have my symbol server setup up correctly:
CMD>set _NT_SYMBOL_PATH
_NT_SYMBOL_PATH=SRV*O:\SymbolCache*\3dbuildlib\SP3DSymbolSrv;SRV*O:\SymbolCache*Symbol information

And my WinDbg command I use these cmd line options:
CMD> windbg.exe -WX -Q -loga %TEMP%\dump_bat_windbg_session.log -c "sxn ld;sxn ud;sxi c000008f;sxi e0434f4d;sxi e06d7363;sxi e0000001" -srcpath "%VCINSTALLDIR%\crt\src;%VCINSTALLDIR%\crt\src\msclr;%VCINSTALLDIR%\crt\src\intel;%VCINSTALLDIR%\crt\src\sys;%VCINSTALLDIR%\crt\src\AMD64;%VCINSTALLDIR%\crt\src\cliext;%VCINSTALLDIR%\crt\src\cvt;%VCINSTALLDIR%\crt\src\msclr\com" -y "%_NT_SYMBOL_PATH%" -z minidump.dmp

================================================================
Using Microsoft (R) Windows Debugger Version 6.2.9200.20512 X86
This Windbg comes with current Win8 SDK:
08/25/2013 05:38 AM 10,903,552 WPTx64-x86_en-us.msi

Do !analyze -v and get this stack:

STACK_TEXT:
WARNING: Frame IP not in any known module. Following frames may be wrong.
0084fa5c ... 0x830246b7
0084fac4 ... msvbvm60!IID_IVbaHost+0x24676
0084fb00 ... msvbvm60!Zombie_Release+0xd285
0084fb10 ... SessionManager!CJSessionManager::ReleaseServices+0x22
0084fb20 ... SessionManager!CJSessionManager::ReleaseDocumentData+0xa
0084fb24 ... SessionManager!CJSessionManager::FinalRelease+0x5
0084fb40 ... SessionManager!ATL::CComObject::~CComObject+0x3c
0084fb48 ... SessionManager!ATL::CComObject::scalar deleting destructor'+0x8<br>0084fb54 ... SessionManager!ATL::CComObject<cjsessionmanager>::Release+0x1b<br><br>================================================================<br>Using Microsoft (R) Windows Debugger Version 6.12.0002.633 X86<br>This WinDBG was probably downloaded from MSDN back in 2008 when I started using WinDBG (it could be download without the SDB back then).<br>02/09/2010 01:40 AM 19,269,120 dbg_x86.msi<br>================================================================<br>Do !analyze -v and get this stack:<br><br>STACK_TEXT: <br>WARNING: Frame IP not in any known module. Following frames may be wrong.<br>0084fa5c ... 0x830246b7<br>0084fac4 ... msvbvm60!IID_IVbaHost+0x24676<br>0084fb00 ... msvbvm60!Zombie_Release+0xd285<br>0084fb10 ... SessionManager!CJSessionManager::ReleaseServices+0x22 [x:\client\sessionmgr\src\jsessionmanager.cpp @ 1946]<br>0084fb20 ... SessionManager!CJSessionManager::ReleaseDocumentData+0xa [x:\client\sessionmgr\src\jsessionmanager.cpp @ 967]<br>0084fb24 ... SessionManager!CJSessionManager::FinalRelease+0x5 [x:\client\sessionmgr\src\jsessionmanager.cpp @ 373]<br>0084fb40 ... SessionManager!ATL::CComObject<cjsessionmanager>::~CComObject<cjsessionmanager>+0x3c [c:\program files (x86)\microsoft visual studio 9.0\vc\atlmfc\include\atlcom.h @ 2646]<br>0084fb48 ... SessionManager!ATL::CComObject<cjsessionmanager>::scalar deleting destructor'+0x8
0084fb54 ... SessionManager!ATL::CComObject::Release+0x1b [c:\program files (x86)\microsoft visual studio 9.0\vc\atlmfc\include\atlcom.h @ 2656]

Having DML mode disabled (‘.prefer_dml 0’) seems to do the trick for
commands like k, !running, etc. I’m not sure about !analyze though.

Kris

On Saturday, September 7, 2013, wrote:

Question:
Is there a way to enable the printing of the source code information side
by side with each DLL!FunctionName when seeing the stack?

An older WinDBG seems to have that mode as default. All versions since no
longer print them like that, which is really useful.

Sample outuputs

The following are the result of !analye -v on the same minidump using two
different versions of WinDBG, the latest from Win8 SDK and one that I
believe I downloaded back in 2008.

Both cases, I have my symbol server setup up correctly:
CMD>set _NT_SYMBOL_PATH

_NT_SYMBOL_PATH=SRV*O:\SymbolCache*\3dbuildlib\SP3DSymbolSrv;SRV*O:\SymbolCache*
http://msdl.microsoft.com/download/symbols

And my WinDbg command I use these cmd line options:
CMD> windbg.exe -WX -Q -loga %TEMP%\dump_bat_windbg_session.log -c “sxn
ld;sxn ud;sxi c000008f;sxi e0434f4d;sxi e06d7363;sxi e0000001” -srcpath
“%VCINSTALLDIR%\crt\src;%VCINSTALLDIR%\crt\src\msclr;%VCINSTALLDIR%\crt\src\intel;%VCINSTALLDIR%\crt\src\sys;%VCINSTALLDIR%\crt\src\AMD64;%VCINSTALLDIR%\crt\src\cliext;%VCINSTALLDIR%\crt\src\cvt;%VCINSTALLDIR%\crt\src\msclr\com”
-y “%_NT_SYMBOL_PATH%” -z minidump.dmp

================================================================
Using Microsoft (R) Windows Debugger Version 6.2.9200.20512 X86
This Windbg comes with current Win8 SDK:
08/25/2013 05:38 AM 10,903,552 WPTx64-x86_en-us.msi

Do !analyze -v and get this stack:

STACK_TEXT:
WARNING: Frame IP not in any known module. Following frames may be wrong.
0084fa5c … 0x830246b7
0084fac4 … msvbvm60!IID_IVbaHost+0x24676
0084fb00 … msvbvm60!Zombie_Release+0xd285
0084fb10 … SessionManager!CJSessionManager::ReleaseServices+0x22
0084fb20 … SessionManager!CJSessionManager::ReleaseDocumentData+0xa
0084fb24 … SessionManager!CJSessionManager::FinalRelease+0x5
0084fb40 …
SessionManager!ATL::CComObject::~CComObject+0x3c
> 0084fb48 … SessionManager!ATL::CComObject::scalar<br>&gt; deleting destructor'+0x8<br>&gt; 0084fb54 ... SessionManager!ATL::CComObject<cjsessionmanager>::Release+0x1b<br>&gt;<br>&gt; ================================================================<br>&gt; Using Microsoft (R) Windows Debugger Version 6.12.0002.633 X86<br>&gt; This WinDBG was probably downloaded from MSDN back in 2008 when I started<br>&gt; using WinDBG (it could be download without the SDB back then).<br>&gt; 02/09/2010 01:40 AM 19,269,120 dbg_x86.msi<br>&gt; ================================================================<br>&gt; Do !analyze -v and get this stack:<br>&gt;<br>&gt; STACK_TEXT:<br>&gt; WARNING: Frame IP not in any known module. Following frames may be wrong.<br>&gt; 0084fa5c ... 0x830246b7<br>&gt; 0084fac4 ... msvbvm60!IID_IVbaHost+0x24676<br>&gt; 0084fb00 ... msvbvm60!Zombie_Release+0xd285<br>&gt; 0084fb10 ... SessionManager!CJSessionManager::ReleaseServices+0x22<br>&gt; [x:\client\sessionmgr\src\jsessionmanager.cpp @ 1946]<br>&gt; 0084fb20 ... SessionManager!CJSessionManager::ReleaseDocumentData+0xa<br>&gt; [x:\client\sessionmgr\src\jsessionmanager.cpp @ 967]<br>&gt; 0084fb24 ... SessionManager!CJSessionManager::FinalRelease+0x5<br>&gt; [x:\client\sessionmgr\src\jsessionmanager.cpp @ 373]<br>&gt; 0084fb40 ...<br>&gt; SessionManager!ATL::CComObject<cjsessionmanager>::~CComObject<cjsessionmanager>+0x3c<br>&gt; [c:\program files (x86)\microsoft visual studio<br>&gt; 9.0\vc\atlmfc\include\atlcom.h @ 2646]<br>&gt; 0084fb48 ... SessionManager!ATL::CComObject<cjsessionmanager>::scalar
> deleting destructor’+0x8
> 0084fb54 …
> SessionManager!ATL::CComObject::Release+0x1b [c:\program
> files (x86)\microsoft visual studio 9.0\vc\atlmfc\include\atlcom.h @ 2656]
>
>
>
>
> —
> WINDBG is sponsored by OSR
>
> OSR is hiring!! Info at http://www.osr.com/careers
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer
>


Kris