*** Fatal System Error: 0x00000077 (0x00000000,0x80545C3C,0x00000000,0xF795ED24)
Break instruction exception - code 80000003 (first chance)
A fatal system error has occurred.Debugger entered on first try; Bugcheck callbacks have not been invoked.
A fatal system error has occurred.
Connected to Windows XP 2600 x86 compatible target at (Thu Nov 19 17:39:23.219 2009
(GMT+8)), ptr64 FALSELoading Kernel Symbols..................................................................Loading User Symbols
******************************************************************************** ** Bugcheck Analysis ** ********************************************************************************
Use !analyze -v to get detailed debugging information.
BugCheck 77, {0, 80545c3c, 0, f795ed24}
Probably caused by : memory_corruption ( nt!MmInPageKernelStack+176 )
Followup: MachineOwner---------
nt!RtlpBreakWithStatusInstruction:8052b5dc cc int 31: kd> !analyze -v******************************************************************************** ** Bugcheck Analysis ** ********************************************************************************
KERNEL_STACK_INPAGE_ERROR (77)The requested page of kernel data could not be read in. Caused bybad block in paging file or disk controller error.In the case when the first arguments is 0 or 1, the stack signaturein the kernel stack was not found. Again, bad hardware.An I/O status of c000009c (STATUS_DEVICE_DATA_ERROR) orC000016AL (STATUS_DISK_OPERATION_FAILED) normally indicatesthe data could not be read from the disk due to a badblock. Upon reboot autocheck will run and attempt to map out the badsector. If the status is C0000185 (STATUS_IO_DEVICE_ERROR) and the pagingfile is on a SCSI disk device, then the cabling and termination should bechecked. See the knowledge base article on SCSI termination.Arguments:Arg1: 00000000, (page was retrieved from page cache)Arg2: 80545c3c, value found in stack where signature should beArg3: 00000000, 0Arg4: f795ed24, address of signature on kernel stack
Debugging Details:------------------
ERROR_CODE: (NTSTATUS) 0 - STATUS_WAIT_0
BUGCHECK_STR: 0x77_0
DEFAULT_BUCKET_ID: DRIVER_FAULT
PROCESS_NAME: System
LAST_CONTROL_TRANSFER: from 804f8df9 to 8052b5dc
STACK_TEXT: f797e90c 804f8df9 00000003 f797ec68 00000000 nt!RtlpBreakWithStatusInstructionf797e958 804f99e4 00000003 85fc23c8 00000000 nt!KiBugCheckDebugBreak+0x19f797ed38 804f9f33 00000077 00000000 80545c3c nt!KeBugCheck2+0x574f797ed58 80512e18 00000077 00000000 80545c3c nt!KeBugCheckEx+0x1bf797ed8c 8053fd76 00fc23c8 00000000 85fba8b8 nt!MmInPageKernelStack+0x176f797eda4 80540246 85fc2428 805cff64 00000000 nt!KiInSwapKernelStacks+0x16f797edac 805cff64 00000000 00000000 00000000 nt!KeSwapProcessOrStack+0x7cf797eddc 805460de 805401ca 00000000 00000000 nt!PspSystemThreadStartup+0x3400000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16
STACK_COMMAND: kb
FOLLOWUP_IP: nt!MmInPageKernelStack+17680512e18 8a550b mov dl,byte ptr [ebp+0Bh]
SYMBOL_STACK_INDEX: 4
SYMBOL_NAME: nt!MmInPageKernelStack+176
FOLLOWUP_NAME: MachineOwner
MODULE_NAME: nt
DEBUG_FLR_IMAGE_TIMESTAMP: 4802516a
IMAGE_NAME: memory_corruption
FAILURE_BUCKET_ID: 0x77_0_nt!MmInPageKernelStack+176
BUCKET_ID: 0x77_0_nt!MmInPageKernelStack+176
1: kd> lmvm ntstart end module name804d7000 806e4000 nt (pdb symbols) d:\symbols\xpsp3
\ntkrpamp.pdb\7D6290E03E32455BB0E035E38816124F1\ntkrpamp.pdb Loaded symbol image file: ntkrpamp.exe Image path: ntkrpamp.exe Image name: ntkrpamp.exe Timestamp: Mon Apr 14 02:31:06 2008 (4802516A) CheckSum: 001F442E ImageSize: 0020D000 File version: 5.1.2600.5512 Product version: 5.1.2600.5512 File flags: 0 (Mask 3F) File OS: 40004 NT Win32 File type: 1.0 App File date: 00000000.00000000 Translations: 0409.04b0 CompanyName: Microsoft Corporation ProductName: Microsoft® Windows® Operating System InternalName: ntkrpamp.exe OriginalFilename: ntkrpamp.exe ProductVersion: 5.1.2600.5512 FileVersion: 5.1.2600.5512 (xpsp.080413-2111) FileDescription: NT Kernel & System LegalCopyright: © Microsoft Corporation. All rights reserved.
小弟新学Windbg,这个问题高手帮忙看下可以吗,给指出一个方向也可以。谢谢了先
看下面这段。。。
ntkrnlpa!MmInPageKernelStack+0x158:00438ec8 8b4328 mov eax,dword ptr [ebx+28h]00438ecb 8b48fc mov ecx,dword ptr [eax-4]00438ece 5f pop edi00438ecf 5e pop esi00438ed0 3bcb cmp ecx,ebx00438ed2 5b pop ebx00438ed3 740e je ntkrnlpa!MmInPageKernelStack+0x173 (00438ee3)
ntkrnlpa!MmInPageKernelStack+0x165:00438ed5 50 push eax00438ed6 6a00 push 000438ed8 51 push ecx00438ed9 ff75f8 push dword ptr [ebp-8]00438edc 6a77 push 77h
ntkrnlpa!MmInPageKernelStack+0x16e:00438ede e8c78dfeff call ntkrnlpa!KeBugCheckEx (00421caa)
ebx+28h是_ETHREAD->Tcb->KernelStack,判断*((PULONG_PTR)StackInfo->KernelStack - 1)和函数的第一个参数EThread是否相等,如果不相等就给你一个BugCheck。。。
关于这个函数的说明是:This routine makes the specified kernel stack resident