Skip to main content

Analyzing server 2008 R2 dwp crash dump file

 Reading a crash dump file is far from intuitive and I spent a great deal of the morning learning about debugging. So here is what I did to read the dump file.

First, you need to install the debugging tools from here. Choose the version that corresponds to your architecture. This install will take a long time depending on your network speed. Important is that you include the WinDbg.exe because that is the tool we will be using.

Next, you need to download the symbol files. Note that you can also use the symbol server from Microsoft but it is faster to have a copy of the symbol files on your hard drive. Download them here. Just download them all. And this will also take a long time because the Symbol files are huge.
Next! Open C:\Program Files\Debugging Tools for Windows (x86)\WinDb.exe.





Choose File -> Open -> Symbol File Path


Type: SRV*C:\Symbols*http://msdl.microsoft.com/download/symbols like this:



Now press CTRL+D to open the DWP file! Very exciting.



Now, if you enter !analyze -v like this:


And you’ll get more information about the crash. In my case:

Code:
8: kd> !analyze -v*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************


USER_MODE_HEALTH_MONITOR (9e)
One or more critical user mode components failed to satisfy a health check.
Hardware mechanisms such as watchdog timers can detect that basic kernel
services are not executing. However, resource starvation issues, including
memory leaks, lock contention, and scheduling priority misconfiguration,
may block critical user mode components without blocking DPCs or
draining the nonpaged pool.
Kernel components can extend watchdog timer functionality to user mode
by periodically monitoring critical applications. This bugcheck indicates
that a user mode health check failed in a manner such that graceful
shutdown is unlikely to succeed. It restores critical services by
rebooting and/or allowing application failover to other servers.
Arguments:
Arg1: fffffa8038f3ab30, Process that failed to satisfy a health check within the
configured timeout
Arg2: 00000000000004b0, Health monitoring timeout (seconds)
Arg3: 0000000000000000
Arg4: 0000000000000000


Debugging Details:
------------------


PROCESS_OBJECT: fffffa8038f3ab30


CUSTOMER_CRASH_COUNT: 1


DEFAULT_BUCKET_ID: DRIVER_FAULT_SERVER_MINIDUMP


BUGCHECK_STR: 0x9E


PROCESS_NAME: System


CURRENT_IRQL: 2


LAST_CONTROL_TRANSFER: from fffff880030b76a5 to fffff80001a98d00


STACK_TEXT:
fffff880`0253d518 fffff880`030b76a5 : 00000000`0000009e fffffa80`38f3ab30 00000000`000004b0 00000000`00000000 : nt!KeBugCheckEx
fffff880`0253d520 fffff800`01aa4652 : fffff880`0253d600 00000000`00000000 00000000`40800088 00000000`00000001 : netft!NetftWatchdogTimerDpc+0xb9
fffff880`0253d570 fffff800`01aa44f6 : fffff880`030c4100 00000000`03023940 00000000`00000000 00000000`00000000 : nt!KiProcessTimerDpcTable+0x66
fffff880`0253d5e0 fffff800`01aa43de : 00000729`6e09a2ce fffff880`0253dc58 00000000`03023940 fffff880`02517d88 : nt!KiProcessExpiredTimerList+0xc6
fffff880`0253dc30 fffff800`01aa41c7 : 000001c5`99d9f3c1 000001c5`03023940 000001c5`99d9f3fd 00000000`00000040 : nt!KiTimerExpiration+0x1be
fffff880`0253dcd0 fffff800`01a90a2a : fffff880`02515180 fffff880`025202c0 00000000`00000000 fffff880`01368420 : nt!KiRetireDpcList+0x277
fffff880`0253dd80 00000000`00000000 : fffff880`0253e000 fffff880`02538000 fffff880`0253dd40 00000000`00000000 : nt!KiIdleLoop+0x5a


STACK_COMMAND: kb


FOLLOWUP_IP:
netft!NetftWatchdogTimerDpc+b9
fffff880`030b76a5 cc int 3


SYMBOL_STACK_INDEX: 1


SYMBOL_NAME: netft!NetftWatchdogTimerDpc+b9


FOLLOWUP_NAME: MachineOwner


MODULE_NAME: netft


IMAGE_NAME: netft.sys


DEBUG_FLR_IMAGE_TIMESTAMP: 4a5bc48a


FAILURE_BUCKET_ID: X64_0x9E_netft!NetftWatchdogTimerDpc+b9


BUCKET_ID: X64_0x9E_netft!NetftWatchdogTimerDpc+b9


Followup: MachineOwner

---------


Explanation: USER_MODE_HEALTH_MONITOR (9e) is the bug check code I need to investigate. For a complete list of bugcheck codes look here:
http://msdn.microsoft.com/en-us/library/ff542347%28v=VS.85%29.aspx

And now all that is left for me to say is: ‘happy debugging’.
Oh here are some helpful links:
http://blogs.technet.com/b/askcore/archive/2009/06/12/why-is-my-2008-failover-clustering-node-blue-screening-with-a-stop-0x0000009e.aspx

http://blogs.msdn.com/b/ntdebugging/archive/tags/hangs/

Comments

  1. Slots games on Google Play | FilmFileEurope
    Welcome to FilmFileEurope, bj 사이트 the leading source for the 플렉스 홀덤 latest news, 토토 사이트 제작 방법 샤오 미 tips, videos, 365 벳 photos 안전토토사이트 윈윈 and quotes. Visit our website.

    ReplyDelete

Post a Comment

Popular posts from this blog

Calculate how much data can be transferred in 24 hours based on link speed in data center

  In case you are planning for migration via DIA or IPVPN link and as example you have 200Mb stable speed so you could calculate using the below formula. (( 200Mb /8)x60x60x24) /1024/1024 = 2TB /per day In case you have different speed you could replace the 200Mb by any rate to calculate as example below. (( 5 00Mb /8)x60x60x24) /1024/1024 =  5.15TB  /per day So approximate each 100Mb would allow around 1TB per day.

Recreating a VMFS-3 or VMFS-5 partition table in ESXi 5.x

For this kind of issues you need to engage VMware support on this, following any part of this article could lead to more complex situation if not ran by an expert.   Symptoms Datastore does not mount because of a lost or overwritten partition table.   Purpose When a VMFS partition is created in ESX 3.x or ESX 4.x, it has a Master Boot Record (MBR) partition map. The MBR is written to the first 512 B block (LBA0) and contains the information where the (VMFS) partition starts and ends. ESXi 5.0 introduced VMFS-5, which uses a GUID partition table (GPT) for new datastores. When a VMFS-3 partition is created in ESXi 5.x and is later updated to VMFS-5, the original partition map (MBR) is maintained. If the partition information of a VMFS datastore is deleted or overwritten (for example, by a Windows system with direct access to the same disks), it is impossible to determine if the partition map was GPT or MBR. The only time you can be sure that a GPT partition map was used is if th...

How to deploy an OVA in Cloud Director

  How to deploy an OVA in Cloud Director Yesterday I was in a call with a customer and we discussed uploading OVA’s into Cloud Director. I said sure that is no problem at all. Well then I started thinking how are you supposed to deploy an OVA in Cloud Director because I do not even remember how this is done. So I opened up Cloud Director and tried it for myself. I decided to make this blog post along the way to show you how to deploy an OVA in Cloud Director. As an added bonus I will also show you how to upload an OVA to the catalog. This way I can deploy the OVA over and over again. Environment information Cloud director 10.3 OVA How to deploy an OVA in Cloud Director In Cloud director I opened up the Applications section and selected “NEW” I am deploying an OVA so I selected “Add vApp From OVF”. In the screenshot below you can see all the steps involved with (in my case) deploying and customising the Usagemeter. Options to customise are for instance: Network settings, vApp naming...