BSOD: page_fault_in_non_paged_area - Need help diagnosing the problem

Vlad_13

[H]ard|Gawd
Joined
Jun 22, 2006
Messages
1,830
I keep getting BSOD with "page_fault_in_non_paged_area" message while playing games occasionally, but especially in Left 4 Dead. I have the Miniump files, so here is my question: how can a diagnose this BSOD and correct the problem, is there a FAQ for Vista x64 BSODs? If so where can i find it.

BSOD occurs often in L4D, but it's random.

(Vista x64 Ultimate SP1, latest drivers, RAM was tested for 4 hours with MemTest with no errors)

Thanks for your help :)

Here are few screen shots:



 
Last edited:
Ah, got WinDbg. Here is what last minidump file "looks like" when i open with this program:


Microsoft (R) Windows Debugger Version 6.11.0001.404 AMD64
Copyright (c) Microsoft Corporation. All rights reserved.


Loading Dump File [C:\Windows\Minidump\Mini042209-05.dmp]
Mini Kernel Dump File: Only registers and stack trace are available

Symbol search path is: *** Invalid ***
****************************************************************************
* Symbol loading may be unreliable without a symbol search path. *
* Use .symfix to have the debugger choose a symbol path. *
* After setting your symbol path, use .reload to refresh symbol locations. *
****************************************************************************
Executable search path is:
*********************************************************************
* Symbols can not be loaded because symbol path is not initialized. *
* *
* The Symbol Path can be set by: *
* using the _NT_SYMBOL_PATH environment variable. *
* using the -y <symbol_path> argument when starting the debugger. *
* using .sympath and .sympath+ *
*********************************************************************
Unable to load image \SystemRoot\system32\ntoskrnl.exe, Win32 error 0n2
*** WARNING: Unable to verify timestamp for ntoskrnl.exe
*** ERROR: Module load completed but symbols could not be loaded for ntoskrnl.exe
Windows Server 2008/Windows Vista Kernel Version 6001 (Service Pack 1) MP (4 procs) Free x64
Product: WinNt, suite: TerminalServer SingleUserTS
Machine Name:
Kernel base = 0xfffff800`02013000 PsLoadedModuleList = 0xfffff800`021d8db0
Debug session time: Wed Apr 22 22:33:28.523 2009 (GMT-5)
System Uptime: 0 days 1:37:58.594
*********************************************************************
* Symbols can not be loaded because symbol path is not initialized. *
* *
* The Symbol Path can be set by: *
* using the _NT_SYMBOL_PATH environment variable. *
* using the -y <symbol_path> argument when starting the debugger. *
* using .sympath and .sympath+ *
*********************************************************************
Unable to load image \SystemRoot\system32\ntoskrnl.exe, Win32 error 0n2
*** WARNING: Unable to verify timestamp for ntoskrnl.exe
*** ERROR: Module load completed but symbols could not be loaded for ntoskrnl.exe
Loading Kernel Symbols
...............................................................
................................................................
............................
Loading User Symbols
Loading unloaded module list
.......
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 3D, {0, 0, 0, fffff8000206ee99}

*** WARNING: Unable to verify timestamp for mssmbios.sys
*** ERROR: Module load completed but symbols could not be loaded for mssmbios.sys
***** Kernel symbols are WRONG. Please fix symbols to do analysis.

*************************************************************************
*** ***
*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: nt!_KPRCB ***
*** ***
*************************************************************************
*************************************************************************
*** ***
*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: nt!KPRCB ***
*** ***
*************************************************************************
*************************************************************************
*** ***
*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: nt!_KPRCB ***
*** ***
*************************************************************************
*************************************************************************
*** ***
*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: nt!KPRCB ***
*** ***
*************************************************************************
*************************************************************************
*** ***
*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: nt!_KPRCB ***
*** ***
*************************************************************************
*************************************************************************
*** ***
*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: nt!_KPRCB ***
*** ***
*************************************************************************
*************************************************************************
*** ***
*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: nt!_KPRCB ***
*** ***
*************************************************************************
*************************************************************************
*** ***
*** ***
*** Your debugger is not using the correct symbols ***
*** ***
*** In order for this command to work properly, your symbol path ***
*** must point to .pdb files that have full type information. ***
*** ***
*** Certain .pdb files (such as the public OS symbols) do not ***
*** contain the required information. Contact the group that ***
*** provided you with these symbols if you need this command to ***
*** work. ***
*** ***
*** Type referenced: nt!_KPRCB ***
*** ***
*************************************************************************
*********************************************************************
* Symbols can not be loaded because symbol path is not initialized. *
* *
* The Symbol Path can be set by: *
* using the _NT_SYMBOL_PATH environment variable. *
* using the -y <symbol_path> argument when starting the debugger. *
* using .sympath and .sympath+ *
*********************************************************************
*********************************************************************
* Symbols can not be loaded because symbol path is not initialized. *
* *
* The Symbol Path can be set by: *
* using the _NT_SYMBOL_PATH environment variable. *
* using the -y <symbol_path> argument when starting the debugger. *
* using .sympath and .sympath+ *
*********************************************************************
Probably caused by : ntoskrnl.exe ( nt+55350 )

Followup: MachineOwner
---------
 
Can you boot into safe mode and run it for a while and see if it still does it? This will help narrow down causes to drivers and programs loaded in a regular session. Otherwise, try swapping the ram anyways if you can.
 
Are you using any hacked graphics drivers? This doesn't seem to be that the drivers are failing (if so the failed file would be listed) but something the drivers are doing is not making the OS happy. OS crashes have those memory ranges and it sucks because it doesn't tell you what failed unlike when a program is failing.

It could also be a failing graphics card because hardware failures are listed like that also. Cards run in low power mode at idle. I once had a failed ATI card that was fine except when I Loaded 3d applications up, then it would BSOD, otherwise it was fine clicking around in just the XP GUI.

Btw, reading the dump files with the debug software from Microsoft is pointless unless you are very good with code. I was reading the logs trying to figure out a blue screen. End up it was an issue with the antivirus program we have. The log had NOTHING listed about the AV program.
 
That WinDBG output doesn't help at all because you didn't set a symbols path. Under the file menu, go to Set symbols path or whatever it is, then set it to:
Code:
SRV*c:\websymbols*http://msdl.microsoft.com/download/symbols

Should give you much more detailed info.
 
A, thanks, nd here is what i get with the symbol path set.

Microsoft (R) Windows Debugger Version 6.11.0001.404 AMD64
Copyright (c) Microsoft Corporation. All rights reserved.


Loading Dump File [C:\Windows\Minidump\Mini042209-05.dmp]
Mini Kernel Dump File: Only registers and stack trace are available

Symbol search path is: SRV*DownstreamStore*http://msdl.microsoft.com/download/symbols
Executable search path is:
Windows Server 2008/Windows Vista Kernel Version 6001 (Service Pack 1) MP (4 procs) Free x64
Product: WinNt, suite: TerminalServer SingleUserTS
Built by: 6001.18145.amd64fre.vistasp1_gdr.080917-1612
Machine Name:
Kernel base = 0xfffff800`02013000 PsLoadedModuleList = 0xfffff800`021d8db0
Debug session time: Wed Apr 22 22:33:28.523 2009 (GMT-5)
System Uptime: 0 days 1:37:58.594
Loading Kernel Symbols
...............................................................
................................................................
............................
Loading User Symbols
Loading unloaded module list
.......
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck 3D, {0, 0, 0, fffff8000206ee99}

Probably caused by : ntkrnlmp.exe ( nt!KiInterruptHandler+28 )

Followup: MachineOwner
---------

0: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

INTERRUPT_EXCEPTION_NOT_HANDLED (3d)
Arguments:
Arg1: 0000000000000000
Arg2: 0000000000000000
Arg3: 0000000000000000
Arg4: fffff8000206ee99

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


CUSTOMER_CRASH_COUNT: 5

DEFAULT_BUCKET_ID: COMMON_SYSTEM_FAULT

BUGCHECK_STR: 0x3D

PROCESS_NAME: left4dead.exe

CURRENT_IRQL: c

EXCEPTION_RECORD: fffff800035799e8 -- (.exr 0xfffff800035799e8)
ExceptionAddress: fffff8000206ee99 (nt!KiDeferredReadyThread+0x0000000000000599)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 0000000000000000
Parameter[1]: ffffffffffffffff
Attempt to read from address ffffffffffffffff

TRAP_FRAME: fffff80003579a90 -- (.trap 0xfffff80003579a90)
NOTE: The trap frame does not contain all registers.
Some register values may be zeroed or incorrect.
rax=ffff4d08019d5760 rbx=0000000000000000 rcx=fffffa60019d5760
rdx=fffffa800946d898 rsi=0000000000000000 rdi=0000000000000000
rip=fffff8000206ee99 rsp=fffff80003579c20 rbp=fffff80002187680
r8=0000000000000000 r9=0000000000000006 r10=0000000000000000
r11=fffff8000223c640 r12=0000000000000000 r13=0000000000000000
r14=0000000000000000 r15=0000000000000000
iopl=0 nv up ei ng nz na po nc
nt!KiDeferredReadyThread+0x599:
fffff800`0206ee99 48895008 mov qword ptr [rax+8],rdx ds:7b50:ffff4d08`019d5768=????????????????
Resetting default scope

LAST_CONTROL_TRANSFER: from fffff800020680ee to fffff80002068350

STACK_TEXT:
fffff800`03578a18 fffff800`020680ee : 00000000`0000003d 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KeBugCheckEx
fffff800`03578a20 fffff800`02068f28 : fffffa80`0562a230 00000000`00000000 fffff800`021a6160 fffffa60`0f96b000 : nt!KiBugCheckDispatch+0x6e
fffff800`03578b60 fffff800`0207b6bd : 00000000`00000000 fffff800`02013000 fffffa60`0f972000 fffff800`02216f38 : nt!KiInterruptHandler+0x28
fffff800`03578b90 fffff800`02082cff : fffff800`00000001 00000000`00000001 fffff800`00000000 fffffa60`0f971c20 : nt!RtlpExecuteHandlerForException+0xd
fffff800`03578bc0 fffff800`0203fd83 : fffff800`035799e8 fffff800`035793c0 00000000`00000000 fffff800`03579a90 : nt!RtlDispatchException+0x22f
fffff800`035792b0 fffff800`020681a9 : fffff800`035799e8 fffffa80`0946d800 fffff800`03579a90 fffff800`02187680 : nt!KiDispatchException+0xc3
fffff800`035798b0 fffff800`02066d8d : fffffa80`061a9298 fffffa60`0361bfd4 fffffa80`04954e48 00000000`00000000 : nt!KiExceptionDispatch+0xa9
fffff800`03579a90 fffff800`0206ee99 : 00000000`00000000 fffffa80`08580800 00000000`00000000 00000000`00000000 : nt!KiGeneralProtectionFault+0xcd
fffff800`03579c20 fffff800`0207307c : 00000000`00000003 00000000`00000002 fffff800`03579f00 fffff800`02187680 : nt!KiDeferredReadyThread+0x599
fffff800`03579c70 fffff800`02070869 : fffffa80`08580800 fffffa60`03616fec fffff800`02187cf0 00000000`00000001 : nt!KiExitDispatcher+0x1ac
fffff800`03579ca0 fffff800`02071238 : fffff800`03579f00 fffff800`020e3c02 fffff800`03579ef8 00000000`00000010 : nt!KiTimerListExpire+0x2e9
fffff800`03579ed0 fffff800`02071a9f : 00001005`c542b0ad fffffa60`0f971ca0 fffff800`00000010 fffff800`0218aa80 : nt!KiTimerExpiration+0x1d8
fffff800`03579f40 fffff800`0206b825 : fffffa60`0360833c fffff800`02187680 fffffa60`0f971ca0 fffff800`02558320 : nt!KiRetireDpcList+0x1df
fffff800`03579fb0 fffff800`0206b637 : fffffa60`0000040e fffffa60`0f971bf0 00000000`00000000 00000004`e6900bcc : nt!KyRetireDpcList+0x5
fffffa60`0f971be0 fffff800`020aed63 : 00000000`427b8804 fffff800`02069b77 00000000`00000000 fffff800`02558320 : nt!KiDispatchInterruptContinue
fffffa60`0f971c10 fffff800`02069b77 : 00000000`00000000 fffff800`02558320 00000000`00000000 fffffa80`0570e820 : nt!KiDpcInterruptBypass+0x13
fffffa60`0f971c20 00000000`09bf4acc : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KiInterruptDispatchNoLock+0x1d7
00000000`13c4f5c4 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : 0x9bf4acc


STACK_COMMAND: kb

FOLLOWUP_IP:
nt!KiInterruptHandler+28
fffff800`02068f28 90 nop

SYMBOL_STACK_INDEX: 2

SYMBOL_NAME: nt!KiInterruptHandler+28

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: nt

IMAGE_NAME: ntkrnlmp.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 48d1ba35

FAILURE_BUCKET_ID: X64_0x3D_nt!KiInterruptHandler+28

BUCKET_ID: X64_0x3D_nt!KiInterruptHandler+28

Followup: MachineOwner
---------
 
Are you sure? I know for sure nothing is overheating. But...

My best guess is the video card, or video card's memory? Because it only happens when there some kind of gaming/video ram usage going on... Faulty VRAM? This is a bitch... it's a new card too :mad:
 
Last edited:
All I can do is guess at this point. I would swap in a different video card and try it.

This posting is provided "AS IS" with no warranties, and confers no rights.
 
Any one else? :(

I just ran a mem test again today, 7 passes no errors.
 
One question? Why the Creative Sound card?

There is a definite hardware problem, nailing it down further for you, is going to have to involve hardware swapping.

This posting is provided "AS IS" with no warranties, and confers no rights.
 
One question? Why the Creative Sound card?
Cuz it's a "Ferrari" of the sound cards.

On topic:
Hardware problem, ok but i need to find out which part is giving me this BSOD and i thought Minidump file suppose to provide that info. Also i do not have the luxury of having double set of each main part of the system for swap...

Is there a "Minidump" experts out there? Or some kind of advanced forums? Or do i need to contact MS support directly :(
 
Lol. I'm pretty sure I qualify as a minidump expert... But you can ignore my diagnosis.

One of your bugchecks got 5 hits in the entire windows ecosystem. The other 4? Proven hardware fault. The only bug check you need to hit the trifecta is a 9C.

If your system is passing Memtest, and it was my system. First thing I'd try? Remove the latest component in your box and see if they go away. You implied you just installed a new video card, that would be the primary suspect.

As to the creative card, I know they used to have problems with Vista X64. I don't know if they still do, I just switched to Intel HD Audio, and said I'm done buying non-integrated sound cards...

This posting is provided "AS IS" with no warranties, and confers no rights.
 
Before you trust what you are getting from the debug, you really need to get your symbol file situation fixed.

That being said, since you are getting a paging error, have you performed a surface check of the drive(s) on which you have a paging file(s)...
 
Back
Top