Code:
1: kd> .bugcheck
Bugcheck code 000000F4
Arguments 00000000`00000003 fffffa80`05fc7740 fffffa80`05fc7a20 fffff800`033d0e20
Code:
1: kd> dc fffff800033d0e20
fffff800`033d0e20 6d726554 74616e69 20676e69 74697263 Terminating crit
fffff800`033d0e30 6c616369 6f727020 73736563 25783020 ical process 0x%
fffff800`033d0e40 25282070 000a2973 90909090 90909090 p (%s)..........
fffff800`033d0e50 61657242 6f202c6b 67492072 65726f6e Break, or Ignore
fffff800`033d0e60 69622820 00203f29 90909090 90909090 (bi)? .........
fffff800`033d0e70 74697243 6c616369 72687420 20646165 Critical thread
fffff800`033d0e80 70257830 6e692820 29732520 69786520 0x%p (in %s) exi
fffff800`033d0e90 0a646574 90909000 90909090 90909090 ted.............
So the crash occurred in the first place because a critical system process unexpectedly ceased to exist (1st arg - 3). Which process?
Code:
1: kd> .process fffffa8005fc7a20
Implicit process is now fffffa80`05fc7a20
Code:
1: kd> !process
GetPointerFromAddress: unable to read from fffff8000330a000
PROCESS fffffa8005fc7740
SessionId: none Cid: 0244 Peb: 7fffffd7000 ParentCid: 01a8
DirBase: 5fb1e000 ObjectTable: fffff8a00281b5f0 HandleCount: <Data Not Accessible>
Image: csrss.exe
The Client/Server Runtime Subsystem process.
Okay, so why did it terminate?
Code:
DISK_IO_READ_FAILURE: WARNING: Disk IO Read of 0 Bytes Occurred 30 time(s).
So your hard disk did a read on 0 bytes
30 times. This is pretty bad, and I'm surprised your diagnostics passed.
The only thing I can really recommend other than outright replacing the drive even though the diagnostics passed is to enable verifier to be sure there isn't a driver neglecting the file system, as I see a few possibilities.
Driver Verifier:
What is Driver Verifier?
Driver Verifier monitors Windows kernel-mode drivers, graphics drivers, and even 3rd party drivers to detect illegal function calls or actions that might corrupt the system. Driver Verifier can subject the Windows drivers to a variety of stresses and tests to find improper behavior.
Essentially, if there's a 3rd party driver believed to be causing the issues at hand, enabling Driver Verifier will help us see which specific driver is causing the problem.
Before enabling Driver Verifier, it is recommended to create a System Restore Point:
Vista - START | type rstrui - create a restore point
Windows 7 - START | type create | select "Create a Restore Point"
Windows 8/8.1 -
Restore Point - Create in Windows 8
How to enable Driver Verifier:
Start > type "verifier" without the quotes > Select the following options -
1. Select - "Create custom settings (for code developers)"
2. Select - "Select individual settings from a full list"
3. Check the following boxes -
- Special Pool
- Pool Tracking
- Force IRQL Checking
- Deadlock Detection
- Security Checks (only on Windows 7 & 8/8.1)
- DDI compliance checking (only on Windows 8/8.1)
- Miscellaneous Checks
4. Select - "Select driver names from a list"
5. Click on the "Provider" tab. This will sort all of the drivers by the provider.
6. Check EVERY box that is
NOT provided by Microsoft / Microsoft Corporation.
7. Click on Finish.
8. Restart.
Important information regarding Driver Verifier:
- Perhaps the most important which I will now clarify as this has been misunderstood often, enabling Driver Verifier by itself is
not! a solution, but instead a diagnostic utility. It will tell us if a driver is causing your issues, but again it will not outright solve your issues.
- If Driver Verifier finds a violation, the system will BSOD. To expand on this a bit more for the interested, specifically what Driver Verifier actually does is it looks for any driver making illegal function calls, causing memory leaks, etc. When and/if this happens, system corruption occurs if allowed to continue. When Driver Verifier is enabled per my instructions above, it is monitoring
all 3rd party drivers (as we have it set that way) and when it catches a driver attempting to do this, it will quickly flag that driver as being a troublemaker, and bring down the system safely before any corruption can occur.
- After enabling Driver Verifier and restarting the system, depending on the culprit, if for example the driver is on start-up, you may not be able to get back into normal Windows because Driver Verifier will detect it in violation almost straight away, and as stated above, that will cause / force a BSOD.
If this happens, do not panic, do the following:
- Boot into Safe Mode by repeatedly tapping the F8 key during boot-up.
- Once in Safe Mode - Start > Search > type "cmd" without the quotes.
- To turn off Driver Verifier, type in cmd "verifier /reset" without the quotes.
- Restart and boot into normal Windows.
If your OS became corrupt or you cannot boot into Windows after disabling verifier via Safe Mode:
- Boot into Safe Mode by repeatedly tapping the F8 key during boot-up.
- Once in Safe Mode - Start > type "system restore" without the quotes.
- Choose the restore point you created earlier.
-- Note that Safe Mode for Windows 8/8.1 is a bit different, and you may need to try different methods:
5 Ways to Boot into Safe Mode in Windows 8 & Windows 8.1
How long should I keep Driver Verifier enabled for?
I recommend keeping it enabled for at least 24 hours. If you don't BSOD by then, disable Driver Verifier. I will usually say whether or not I'd like for you to keep it enabled any longer.
My system BSOD'd with Driver Verifier enabled, where can I find the crash dumps?
- If you have the system set to generate Small Memory Dumps, they will be located in
%systemroot%\Minidump.
- If you have the system set to generate Kernel Memory Dumps,
it will be located in
%systemroot% and labeled MEMORY.DMP.
Any other questions can most likely be answered by this article:
http://support.microsoft.com/kb/244617