<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress/2.3.3" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>
<channel>
	<title>Comments on: Crash Dump Analysis Patterns (Part 16a)</title>
	<link>https://www.dumpanalysis.org/blog/index.php/2007/06/21/crash-dump-analysis-patterns-part-16a/</link>
	<description>Structural and Behavioral Patterns for Software Diagnostics, Forensics and Prognostics</description>
	<pubDate>Tue, 19 May 2026 00:59:31 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.3.3</generator>
		<item>
		<title>By: Dmitry Vostokov</title>
		<link>https://www.dumpanalysis.org/blog/index.php/2007/06/21/crash-dump-analysis-patterns-part-16a/#comment-767739</link>
		<dc:creator>Dmitry Vostokov</dc:creator>
		<pubDate>Tue, 03 Jun 2025 12:37:18 +0000</pubDate>
		<guid>https://www.dumpanalysis.org/blog/index.php/2007/06/21/crash-dump-analysis-patterns-part-16a/#comment-767739</guid>
		<description>We can check Execution Residue of the interrupt stack:

0: kd&gt; !idt 8

Dumping IDT: fffff8012ae84000

08:	fffff80124812540 nt!KiDoubleFaultAbortShadow	Stack = 0xFFFFF8012AE883D0

0: kd&gt; dp 0xFFFFF8012AE883D0
fffff801`2ae883d0  fffff801`225c1000 fffff801`2aeacfe0
fffff801`2ae883e0  fffff801`225c1000 00000000`b41ed002
fffff801`2ae883f0  00000000`00000000 00000000`00000000
fffff801`2ae88400  00000000`00000000 00000000`00000000
fffff801`2ae88410  00000000`00000000 00000000`00000000
fffff801`2ae88420  00000000`00000000 00000000`00000000
fffff801`2ae88430  00000000`00000000 00000000`00000000
fffff801`2ae88440  00000000`00000000 00000000`00000000

0: kd&gt; dpS fffff801`2aeacfe0-6000 L6000/8
fffff801`2b002731 BasicDisplay!CopyBitsTo_4+0x3c1
 fffff801`2b0011b6 BasicDisplay!BltBits+0x136
 fffff801`241aac49 nt!FioFwReadBytesAtOffset+0x1d
 fffff801`2b002052 BasicDisplay!BASIC_DISPLAY_DRIVER::SystemDisplayWrite+0x116
 fffff801`2b0020c4 BasicDisplay!BddDdiSystemDisplayWrite+0x24
 fffff801`24a13260 nt!BcpWorkspace
 fffff801`2bbb18fd dxgkrnl!DpiSystemDisplayWrite+0xdd
 fffff801`241992b0 nt!GxpWriteFrameBufferPixels+0x1f8
 fffff801`241d2485 nt!output_l+0x819
 fffff801`241c5eee nt!KiFlushRangeTb+0x7e
 fffff801`24187463 nt!IoFlushAdapterBuffers+0x33
 fffff801`2c5f3601 dump_lsi_sas!BuildScatterGather+0x5
 fffff801`2418b7b9 nt!HalpHvCounterQueryCounter+0x19
 fffff801`241c5e4a nt!KeFlushMultipleRangeCurrentTb+0xbe
 fffff801`2c5c3812 dump_diskdump!ScsiPortNotification+0x172
 fffff801`241b4399 nt!KeFlushCurrentTbOnly+0x61
 fffff801`2c5f36cc dump_lsi_sas!BuildScatterGather+0xd0
 fffff801`2c5f3046 dump_lsi_sas!LSImpiBuildIo+0x176
 fffff801`2c5c1c61 dump_diskdump!StartIo+0xa5
 fffff801`2c5c1d6f dump_diskdump!ExecuteSrb+0x1f
 fffff801`243317f9 nt!MmIsAddressValid+0x9
 fffff801`2c5c2264 dump_diskdump!DiskDumpWrite+0x1d4
 fffff801`2b139a00 crashdmp!GetStorageDumpIoMode+0x14
 fffff801`2b13934d crashdmp!CrashdmpWriteRoutine+0x9d
 fffff801`2b140b70 crashdmp!Context+0x50
 fffff801`2b138dfe crashdmp!WritePageSpanToDisk+0x31a
 fffff801`2b140b70 crashdmp!Context+0x50
 fffff801`2b1392b0 crashdmp!CrashdmpWriteRoutine
 fffff801`2b139100 crashdmp!CrashdmpWritePendingRoutine
 fffff801`2b140b70 crashdmp!Context+0x50
 fffff801`2b13b456 crashdmp!FindNextSetBitRange64+0xd6
 fffff801`2b140b70 crashdmp!Context+0x50
 fffff801`2b137b1f crashdmp!WriteBitmapDump+0x477
 fffff801`242f3b90 nt!HvlGetEncryptedData
 fffff801`2b140b70 crashdmp!Context+0x50
 fffff801`242f3b90 nt!HvlGetEncryptedData
 fffff801`242f3b90 nt!HvlGetEncryptedData
 fffff801`24312bd0 nt!KiBugCheckProgress
 fffff801`2b140b70 crashdmp!Context+0x50
 fffff801`2b13695c crashdmp!DumpWrite+0x474
 fffff801`2b140b70 crashdmp!Context+0x50
 fffff801`24312bd0 nt!KiBugCheckProgress
 fffff801`2b13c123 crashdmp!CrashdmpTelemetrySaveEnvironmentVariable+0x5f
 fffff801`2b13290d crashdmp!CheckContextIntegrity+0x6d
 fffff801`24312bd0 nt!KiBugCheckProgress
 fffff801`2b1350d6 crashdmp!CrashdmpWrite+0x1f6
 fffff801`24312bd0 nt!KiBugCheckProgress
 fffff801`242fdf0e nt!IoWriteCrashDump+0x53e
 fffff801`241c6b1a nt!IopIsAddressRangeValid+0x3e
 fffff801`242fd6d0 nt!IoSetDumpRange
 fffff801`242fd060 nt!IoFreeDumpRange
 fffff801`25492794 myfault+0x2794
 fffff801`24312456 nt!KeBugCheck2+0xca6
 fffff801`24a31a00 nt!KeBugCheckReasonCallbackListHead
 fffff801`24a31a00 nt!KeBugCheckReasonCallbackListHead
 fffff801`25492794 myfault+0x2794
 fffff801`24312bd0 nt!KiBugCheckProgress
 fffff801`24312bd0 nt!KiBugCheckProgress
 fffff801`25492794 myfault+0x2794
 fffff801`241f71c0 nt!KeBugCheckEx
 fffff801`241f72c7 nt!KeBugCheckEx+0x107
 fffff801`25492794 myfault+0x2794
 fffff801`24209169 nt!KiBugCheckDispatch+0x69
 fffff801`25492794 myfault+0x2794
 fffff801`24203f83 nt!KiDoubleFaultAbort+0x2c3
 fffff801`25491d3e myfault+0x1d3e
 fffff801`25490000 myfault
 fffff801`25492794 myfault+0x2794</description>
		<content:encoded><![CDATA[<p>We can check Execution Residue of the interrupt stack:</p>
<p>0: kd> !idt 8</p>
<p>Dumping IDT: fffff8012ae84000</p>
<p>08:	fffff80124812540 nt!KiDoubleFaultAbortShadow	Stack = 0xFFFFF8012AE883D0</p>
<p>0: kd> dp 0xFFFFF8012AE883D0<br />
fffff801`2ae883d0  fffff801`225c1000 fffff801`2aeacfe0<br />
fffff801`2ae883e0  fffff801`225c1000 00000000`b41ed002<br />
fffff801`2ae883f0  00000000`00000000 00000000`00000000<br />
fffff801`2ae88400  00000000`00000000 00000000`00000000<br />
fffff801`2ae88410  00000000`00000000 00000000`00000000<br />
fffff801`2ae88420  00000000`00000000 00000000`00000000<br />
fffff801`2ae88430  00000000`00000000 00000000`00000000<br />
fffff801`2ae88440  00000000`00000000 00000000`00000000</p>
<p>0: kd> dpS fffff801`2aeacfe0-6000 L6000/8<br />
fffff801`2b002731 BasicDisplay!CopyBitsTo_4+0&#215;3c1<br />
 fffff801`2b0011b6 BasicDisplay!BltBits+0&#215;136<br />
 fffff801`241aac49 nt!FioFwReadBytesAtOffset+0&#215;1d<br />
 fffff801`2b002052 BasicDisplay!BASIC_DISPLAY_DRIVER::SystemDisplayWrite+0&#215;116<br />
 fffff801`2b0020c4 BasicDisplay!BddDdiSystemDisplayWrite+0&#215;24<br />
 fffff801`24a13260 nt!BcpWorkspace<br />
 fffff801`2bbb18fd dxgkrnl!DpiSystemDisplayWrite+0xdd<br />
 fffff801`241992b0 nt!GxpWriteFrameBufferPixels+0&#215;1f8<br />
 fffff801`241d2485 nt!output_l+0&#215;819<br />
 fffff801`241c5eee nt!KiFlushRangeTb+0&#215;7e<br />
 fffff801`24187463 nt!IoFlushAdapterBuffers+0&#215;33<br />
 fffff801`2c5f3601 dump_lsi_sas!BuildScatterGather+0&#215;5<br />
 fffff801`2418b7b9 nt!HalpHvCounterQueryCounter+0&#215;19<br />
 fffff801`241c5e4a nt!KeFlushMultipleRangeCurrentTb+0xbe<br />
 fffff801`2c5c3812 dump_diskdump!ScsiPortNotification+0&#215;172<br />
 fffff801`241b4399 nt!KeFlushCurrentTbOnly+0&#215;61<br />
 fffff801`2c5f36cc dump_lsi_sas!BuildScatterGather+0xd0<br />
 fffff801`2c5f3046 dump_lsi_sas!LSImpiBuildIo+0&#215;176<br />
 fffff801`2c5c1c61 dump_diskdump!StartIo+0xa5<br />
 fffff801`2c5c1d6f dump_diskdump!ExecuteSrb+0&#215;1f<br />
 fffff801`243317f9 nt!MmIsAddressValid+0&#215;9<br />
 fffff801`2c5c2264 dump_diskdump!DiskDumpWrite+0&#215;1d4<br />
 fffff801`2b139a00 crashdmp!GetStorageDumpIoMode+0&#215;14<br />
 fffff801`2b13934d crashdmp!CrashdmpWriteRoutine+0&#215;9d<br />
 fffff801`2b140b70 crashdmp!Context+0&#215;50<br />
 fffff801`2b138dfe crashdmp!WritePageSpanToDisk+0&#215;31a<br />
 fffff801`2b140b70 crashdmp!Context+0&#215;50<br />
 fffff801`2b1392b0 crashdmp!CrashdmpWriteRoutine<br />
 fffff801`2b139100 crashdmp!CrashdmpWritePendingRoutine<br />
 fffff801`2b140b70 crashdmp!Context+0&#215;50<br />
 fffff801`2b13b456 crashdmp!FindNextSetBitRange64+0xd6<br />
 fffff801`2b140b70 crashdmp!Context+0&#215;50<br />
 fffff801`2b137b1f crashdmp!WriteBitmapDump+0&#215;477<br />
 fffff801`242f3b90 nt!HvlGetEncryptedData<br />
 fffff801`2b140b70 crashdmp!Context+0&#215;50<br />
 fffff801`242f3b90 nt!HvlGetEncryptedData<br />
 fffff801`242f3b90 nt!HvlGetEncryptedData<br />
 fffff801`24312bd0 nt!KiBugCheckProgress<br />
 fffff801`2b140b70 crashdmp!Context+0&#215;50<br />
 fffff801`2b13695c crashdmp!DumpWrite+0&#215;474<br />
 fffff801`2b140b70 crashdmp!Context+0&#215;50<br />
 fffff801`24312bd0 nt!KiBugCheckProgress<br />
 fffff801`2b13c123 crashdmp!CrashdmpTelemetrySaveEnvironmentVariable+0&#215;5f<br />
 fffff801`2b13290d crashdmp!CheckContextIntegrity+0&#215;6d<br />
 fffff801`24312bd0 nt!KiBugCheckProgress<br />
 fffff801`2b1350d6 crashdmp!CrashdmpWrite+0&#215;1f6<br />
 fffff801`24312bd0 nt!KiBugCheckProgress<br />
 fffff801`242fdf0e nt!IoWriteCrashDump+0&#215;53e<br />
 fffff801`241c6b1a nt!IopIsAddressRangeValid+0&#215;3e<br />
 fffff801`242fd6d0 nt!IoSetDumpRange<br />
 fffff801`242fd060 nt!IoFreeDumpRange<br />
 fffff801`25492794 myfault+0&#215;2794<br />
 fffff801`24312456 nt!KeBugCheck2+0xca6<br />
 fffff801`24a31a00 nt!KeBugCheckReasonCallbackListHead<br />
 fffff801`24a31a00 nt!KeBugCheckReasonCallbackListHead<br />
 fffff801`25492794 myfault+0&#215;2794<br />
 fffff801`24312bd0 nt!KiBugCheckProgress<br />
 fffff801`24312bd0 nt!KiBugCheckProgress<br />
 fffff801`25492794 myfault+0&#215;2794<br />
 fffff801`241f71c0 nt!KeBugCheckEx<br />
 fffff801`241f72c7 nt!KeBugCheckEx+0&#215;107<br />
 fffff801`25492794 myfault+0&#215;2794<br />
 fffff801`24209169 nt!KiBugCheckDispatch+0&#215;69<br />
 fffff801`25492794 myfault+0&#215;2794<br />
 fffff801`24203f83 nt!KiDoubleFaultAbort+0&#215;2c3<br />
 fffff801`25491d3e myfault+0&#215;1d3e<br />
 fffff801`25490000 myfault<br />
 fffff801`25492794 myfault+0&#215;2794</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dmitry Vostokov</title>
		<link>https://www.dumpanalysis.org/blog/index.php/2007/06/21/crash-dump-analysis-patterns-part-16a/#comment-767700</link>
		<dc:creator>Dmitry Vostokov</dc:creator>
		<pubDate>Fri, 01 Oct 2021 19:04:01 +0000</pubDate>
		<guid>https://www.dumpanalysis.org/blog/index.php/2007/06/21/crash-dump-analysis-patterns-part-16a/#comment-767700</guid>
		<description>0: kd&gt; !stackusage
Stack Usage By Function
===============================

      Size     Count  Module
0x00005970       477  myfault
0x00000140         1  nt!KiBugCheckDispatch
0x00000140         1  nt!IopXxxControlFile
0x00000140         1  myfault
0x000000A0         1  nt!IopSynchronousServiceTail
0x00000070         1  nt!NtDeviceIoControlFile
0x00000060         1  myfault
0x00000040         1  nt!IofCallDriver
0x00000030         1  myfault
0x00000008         2  nt!KeBugCheckEx

Total Size: 0x00005F18
[...]</description>
		<content:encoded><![CDATA[<p>0: kd> !stackusage<br />
Stack Usage By Function<br />
===============================</p>
<p>      Size     Count  Module<br />
0&#215;00005970       477  myfault<br />
0&#215;00000140         1  nt!KiBugCheckDispatch<br />
0&#215;00000140         1  nt!IopXxxControlFile<br />
0&#215;00000140         1  myfault<br />
0&#215;000000A0         1  nt!IopSynchronousServiceTail<br />
0&#215;00000070         1  nt!NtDeviceIoControlFile<br />
0&#215;00000060         1  myfault<br />
0&#215;00000040         1  nt!IofCallDriver<br />
0&#215;00000030         1  myfault<br />
0&#215;00000008         2  nt!KeBugCheckEx</p>
<p>Total Size: 0&#215;00005F18<br />
[&#8230;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Crash Dump Analysis &#187; Blog Archive &#187; Old Mental Dumps from June 21st</title>
		<link>https://www.dumpanalysis.org/blog/index.php/2007/06/21/crash-dump-analysis-patterns-part-16a/#comment-159948</link>
		<dc:creator>Crash Dump Analysis &#187; Blog Archive &#187; Old Mental Dumps from June 21st</dc:creator>
		<pubDate>Mon, 21 Jun 2010 11:07:31 +0000</pubDate>
		<guid>https://www.dumpanalysis.org/blog/index.php/2007/06/21/crash-dump-analysis-patterns-part-16a/#comment-159948</guid>
		<description>[...] • Crash Dump Analysis Patterns (Part 16a) - Stack overflow in kernel. Generated some comments and can also be see in the following pattern case study: Lateral damage, stack overflow and execution residue [...]</description>
		<content:encoded><![CDATA[<p>[&#8230;] • Crash Dump Analysis Patterns (Part 16a) - Stack overflow in kernel. Generated some comments and can also be see in the following pattern case study: Lateral damage, stack overflow and execution residue [&#8230;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Crash Dump Analysis &#187; Blog Archive &#187; Icons for Memory Dump Analysis Patterns (Part 31)</title>
		<link>https://www.dumpanalysis.org/blog/index.php/2007/06/21/crash-dump-analysis-patterns-part-16a/#comment-149608</link>
		<dc:creator>Crash Dump Analysis &#187; Blog Archive &#187; Icons for Memory Dump Analysis Patterns (Part 31)</dc:creator>
		<pubDate>Tue, 04 May 2010 10:37:53 +0000</pubDate>
		<guid>https://www.dumpanalysis.org/blog/index.php/2007/06/21/crash-dump-analysis-patterns-part-16a/#comment-149608</guid>
		<description>[...] we introduce an icon for Stack Overflow (kernel mode) [...]</description>
		<content:encoded><![CDATA[<p>[&#8230;] we introduce an icon for Stack Overflow (kernel mode) [&#8230;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dmitry Vostokov</title>
		<link>https://www.dumpanalysis.org/blog/index.php/2007/06/21/crash-dump-analysis-patterns-part-16a/#comment-131827</link>
		<dc:creator>Dmitry Vostokov</dc:creator>
		<pubDate>Sun, 07 Mar 2010 23:42:09 +0000</pubDate>
		<guid>https://www.dumpanalysis.org/blog/index.php/2007/06/21/crash-dump-analysis-patterns-part-16a/#comment-131827</guid>
		<description>Certain functions like RtlDispatchException, RtlRaiseStatus and others have function parameters pointing to an exception record and context. See, for example,

http://source.winehq.org/source/dlls/kernel32/except.c#L84</description>
		<content:encoded><![CDATA[<p>Certain functions like RtlDispatchException, RtlRaiseStatus and others have function parameters pointing to an exception record and context. See, for example,</p>
<p><a href="http://source.winehq.org/source/dlls/kernel32/except.c#L84" rel="nofollow">http://source.winehq.org/source/dlls/kernel32/except.c#L84</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Finy</title>
		<link>https://www.dumpanalysis.org/blog/index.php/2007/06/21/crash-dump-analysis-patterns-part-16a/#comment-131572</link>
		<dc:creator>Finy</dc:creator>
		<pubDate>Sun, 07 Mar 2010 04:53:15 +0000</pubDate>
		<guid>https://www.dumpanalysis.org/blog/index.php/2007/06/21/crash-dump-analysis-patterns-part-16a/#comment-131572</guid>
		<description>I have the same question as Blue Fish had(June 24th, 2008 at 3:44 am) :

May I know why to choose “b044ef44″ &#38; “b044ec74″ to inspect?</description>
		<content:encoded><![CDATA[<p>I have the same question as Blue Fish had(June 24th, 2008 at 3:44 am) :</p>
<p>May I know why to choose “b044ef44″ &amp; “b044ec74″ to inspect?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Crash Dump Analysis &#187; Blog Archive &#187; Variable Kernel Stack in Vista and W2K8</title>
		<link>https://www.dumpanalysis.org/blog/index.php/2007/06/21/crash-dump-analysis-patterns-part-16a/#comment-68822</link>
		<dc:creator>Crash Dump Analysis &#187; Blog Archive &#187; Variable Kernel Stack in Vista and W2K8</dc:creator>
		<pubDate>Thu, 19 Mar 2009 21:58:49 +0000</pubDate>
		<guid>https://www.dumpanalysis.org/blog/index.php/2007/06/21/crash-dump-analysis-patterns-part-16a/#comment-68822</guid>
		<description>[...] Stack Overflow Pattern (kernel mode) [...]</description>
		<content:encoded><![CDATA[<p>[&#8230;] Stack Overflow Pattern (kernel mode) [&#8230;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Crash Dump Analysis &#187; Blog Archive &#187; Lateral damage, stack overflow and execution residue: pattern cooperation</title>
		<link>https://www.dumpanalysis.org/blog/index.php/2007/06/21/crash-dump-analysis-patterns-part-16a/#comment-49662</link>
		<dc:creator>Crash Dump Analysis &#187; Blog Archive &#187; Lateral damage, stack overflow and execution residue: pattern cooperation</dc:creator>
		<pubDate>Wed, 05 Nov 2008 17:39:53 +0000</pubDate>
		<guid>https://www.dumpanalysis.org/blog/index.php/2007/06/21/crash-dump-analysis-patterns-part-16a/#comment-49662</guid>
		<description>[...] bugcheck argument 1 shows that we have a double fault that most often results from kernel stack overflow. If we go back to processor 0 to inspect its TSS we don&#8217;t get meaningful results too (we [...]</description>
		<content:encoded><![CDATA[<p>[&#8230;] bugcheck argument 1 shows that we have a double fault that most often results from kernel stack overflow. If we go back to processor 0 to inspect its TSS we don&#8217;t get meaningful results too (we [&#8230;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dmitry Vostokov</title>
		<link>https://www.dumpanalysis.org/blog/index.php/2007/06/21/crash-dump-analysis-patterns-part-16a/#comment-31371</link>
		<dc:creator>Dmitry Vostokov</dc:creator>
		<pubDate>Tue, 24 Jun 2008 07:39:33 +0000</pubDate>
		<guid>https://www.dumpanalysis.org/blog/index.php/2007/06/21/crash-dump-analysis-patterns-part-16a/#comment-31371</guid>
		<description>I chose b044e000 because I wanted to inspect the raw stack data from the top of the stack (ESP value in red above). By choosing other ranges we might miss something.</description>
		<content:encoded><![CDATA[<p>I chose b044e000 because I wanted to inspect the raw stack data from the top of the stack (ESP value in red above). By choosing other ranges we might miss something.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Blue Fish</title>
		<link>https://www.dumpanalysis.org/blog/index.php/2007/06/21/crash-dump-analysis-patterns-part-16a/#comment-31352</link>
		<dc:creator>Blue Fish</dc:creator>
		<pubDate>Tue, 24 Jun 2008 03:44:59 +0000</pubDate>
		<guid>https://www.dumpanalysis.org/blog/index.php/2007/06/21/crash-dump-analysis-patterns-part-16a/#comment-31352</guid>
		<description>According to the result of : dds b044e000 b044e000+3000
May I know whay to choose "b044ef44" &#38; "b044ec74" to inspect? Does we need to choose the value of "RtlRaiseStatus+0x47" after? How about if I can't find "RtlRaiseStatus+0x47"?

Thanks!</description>
		<content:encoded><![CDATA[<p>According to the result of : dds b044e000 b044e000+3000<br />
May I know whay to choose &#8220;b044ef44&#8243; &amp; &#8220;b044ec74&#8243; to inspect? Does we need to choose the value of &#8220;RtlRaiseStatus+0&#215;47&#8243; after? How about if I can&#8217;t find &#8220;RtlRaiseStatus+0&#215;47&#8243;?</p>
<p>Thanks!</p>
]]></content:encoded>
	</item>
</channel>
</rss>
