Got a new crash
Code:
SYSTEM_THREAD_EXCEPTION_NOT_HANDLED (7e)
This is a very common bugcheck. Usually the exception address pinpoints
the driver/function that caused the problem. Always note this address
as well as the link date of the driver/image that contains this address.
Arguments:
Arg1: ffffffffc0000005, The exception code that was not handled
Arg2: fffff88004578fd5, The address that the exception occurred at
Arg3: fffff880031ac728, Exception Record Address
Arg4: fffff880031abf80, Context Record Address
(…)
STACK_TEXT:
fffff880`031ac960 fffff880`04568731 : fffffa80`07b8d000 fffff8a0`065d8de0 fffff8a0`031487a0 fffffa80`0782b000 : dxgmms1!VIDMM_SEGMENT::MarkResourcesForEviction+0x201
fffff880`031ac9c0 fffff880`04566f3f : fffff8a0`10fadcd0 fffffa80`07b8d000 fffffa80`092bd140 fffffa80`07b8d000 : dxgmms1!VIDMM_GLOBAL::NotifyAllocationEviction+0x59
fffff880`031ac9f0 fffff880`04562498 : fffffa80`0b059bc0 00000000`00000000 00000000`00000000 fffff880`031acb60 : dxgmms1!VIDMM_GLOBAL::ProcessDeferredCommand+0x523
fffff880`031acb10 fffff880`04580301 : fffffa80`00000000 fffffa80`04ec2010 00000000`0000000f fffff880`0458209d : dxgmms1!VidMmiProcessTerminationCommand+0x4c
fffff880`031acb60 fffff880`0457f58c : fffff880`009efec0 fffffa80`0a353d50 00000000`00000000 fffffa80`04ec2010 : dxgmms1!VidSchiSubmitDeviceCommand+0x39
fffff880`031acb90 fffff880`0457f02a : 00000000`00000000 fffffa80`0a353d50 00000000`00000080 fffffa80`04ec2010 : dxgmms1!VidSchiSubmitQueueCommand+0xb0
fffff880`031acbc0 fffff800`03759aba : 00000000`06b07952 fffffa80`0779b260 fffffa80`04eb5450 fffffa80`0779b260 : dxgmms1!VidSchiWorkerThread+0xd6
fffff880`031acc00 fffff800`034b1426 : fffff880`009eb180 fffffa80`0779b260 fffff880`009f5f40 00000000`ffffffff : nt!PspSystemThreadStartup+0x5a
fffff880`031acc40 00000000`00000000 : fffff880`031ad000 fffff880`031a7000 fffff880`031ac540 00000000`00000000 : nt!KiStartSystemThread+0x16
My dump is 5.47GB; Windows did a full memory dump. As a result, I can not distribute the dump (due to both size and content), but I can easily issue WinDbg commands to it to help find whatever gave the bad address (ffffffff`ffffffff).
As a bit of scope, I had just exited Minecraft after a session. Specifically, the child process with the game itself had exited just around the time of the dump (or maybe didn't exit fully yet, I'll check that).
EDIT: It didn't exit yet. PID 5968, 1 thread, 6,414,600K virtual size. Time to see what it was doing, exactly, in that thread.
EDIT:
Code:
0: kd> !thread 0xfffffa80069e0220
THREAD fffffa80069e0220 Cid 1750.0878 Teb: 000007fffffd5000 Win32Thread: fffff900c1f64010 READY on processor 0
Not impersonating
DeviceMap fffff8a00613f8e0
Owning Process fffffa800a21d060 Image: javaw.exe
Attached Process N/A Image: N/A
Wait Start TickCount 11682976 Ticks: 0
Context Switch Count 109727 IdealProcessor: 0 LargeStack
UserTime 00:00:57.002
KernelTime 00:00:02.246
Win32 Start Address msvcr100!endthreadex (0x000000006e5e1dbc)
Stack Init fffff8800a1c3c70 Current fffff8800a1c33e0
Base fffff8800a1c4000 Limit fffff8800a1bc000 Call 0
Priority 11 BasePriority 10 UnusualBoost 0 ForegroundBoost 0 IoPriority 2 PagePriority 5
Child-SP RetAddr : Args to Child : Call Site
fffff880`0a1c3420 fffff800`034c509e : fffffa80`069e0220 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KiSwapContext+0x7a
fffff880`0a1c3560 fffff880`04581b34 : fffffa80`0779b260 fffffa80`00000000 fffffa80`0a4f6e00 fffffa80`0779b368 : nt!KeSetEvent+0x3dc
fffff880`0a1c35d0 fffff880`04548d84 : fffffa80`00000001 fffffa80`07b8d000 fffffa80`0a4f6ec0 fffff8a0`0510f3d0 : dxgmms1!VidSchiSubmitCommandPacketToQueue+0x1d8
fffff880`0a1c3640 fffff880`0448998e : fffff8a0`06173000 fffff8a0`06173000 00000000`00000001 00000000`00000000 : dxgmms1!VidMmTerminateAllocation+0x268
fffff880`0a1c3720 fffff880`0448daec : 00000000`00000000 fffff880`0a1c3b60 00000000`00000000 fffff880`044543cb : dxgkrnl!DXGDEVICE::TerminateAllocations+0x166
fffff880`0a1c3770 fffff880`04490285 : fffff8a0`06173000 fffff880`0a1c3850 00000002`00000000 00000000`00000701 : dxgkrnl!DXGDEVICE::DestroyAllocation+0x44c
fffff880`0a1c3800 fffff960`001db692 : 00000000`1445b858 fffffa80`069e0220 00000000`00000020 00000000`1bac4a10 : dxgkrnl!DxgkDestroyAllocation+0xa9d
fffff880`0a1c3ab0 fffff800`034becd3 : 00000000`00000000 00000000`14434040 fffffa80`05def901 00000000`00000000 : win32k!NtGdiDdDDIDestroyAllocation+0x12
fffff880`0a1c3ae0 000007fe`fe144a5a : 00000000`6fb3caad 00000000`11593920 00000000`1169ed78 00000000`1444da80 : nt!KiSystemServiceCopyEnd+0x13 (TrapFrame @ fffff880`0a1c3ae0)
00000000`1169ecd8 00000000`6fb3caad : 00000000`11593920 00000000`1169ed78 00000000`1444da80 00000000`1444da80 : GDI32!NtGdiDdDDIDestroyAllocation+0xa
00000000`1169ece0 00000000`11593920 : 00000000`1169ed78 00000000`1444da80 00000000`1444da80 00000000`7792d670 : aticfx64!gslCfxExit+0x748d
00000000`1169ece8 00000000`1169ed78 : 00000000`1444da80 00000000`1444da80 00000000`7792d670 00000000`00000005 : 0x11593920
00000000`1169ecf0 00000000`1444da80 : 00000000`1444da80 00000000`7792d670 00000000`00000005 00000000`1c204998 : 0x1169ed78
00000000`1169ecf8 00000000`1444da80 : 00000000`7792d670 00000000`00000005 00000000`1c204998 00000000`00000000 : 0x1444da80
00000000`1169ed00 00000000`7792d670 : 00000000`00000005 00000000`1c204998 00000000`00000000 00000000`1c18a640 : 0x1444da80
00000000`1169ed08 00000000`00000005 : 00000000`1c204998 00000000`00000000 00000000`1c18a640 00000000`1d14dc50 : ntdll!PebLdr+0x30
00000000`1169ed10 00000000`1c204998 : 00000000`00000000 00000000`1c18a640 00000000`1d14dc50 00000000`1169ee00 : 0x5
00000000`1169ed18 00000000`00000000 : 00000000`1c18a640 00000000`1d14dc50 00000000`1169ee00 00000000`6fb191fc : 0x1c204998
EDIT: Found the corruption which caused the crash:
Code:
lea rdx,[rsi+198h] ; RSI = fffff8a0`10fadcd0
; RDX = fffff8a0`10fade68
mov rax,qword ptr [rdx+8] ; RAX = ff05f8a0`01c951a8
; ^^ ERROR!
mov rcx,qword ptr [rdx] ; RCX = ff38f8a0`08ac3798
; ^^ ERROR!
mov qword ptr [rax],rcx ; CRASH
The specific manifestation of the corruption (the specific alignment) is the same as the other dump I found the corruption in. This (now) has a physical memory address of 1`1b73fe68, time to check the other dump's physical address.
EDIT: Old has a physical address of 1`197a66c0. Somewhat far, but close enough to be on the same stick (assuming that the sticks were in the same places both times...is it possible to check that from WinDbg?) If they are indeed on the same stick, I'll swap the two to see if the corruption moves (which would likely mean my slight overclocking theory has merit, at least that it is one stick having trouble). If the corruption moves to the other stick, it is almost certainly a driver problem or something.
EDIT: Sticks were in the same place both times (under slot 4GB, over slot 2GB.) Time to swap them