disk hardware failure

Hi,

I posted this windbg a few weeks ago (decided to post to ntdev instead this
time, also thanks to David Craig for his suggestions). I’m running DTM test
(Vista 64 client) for unclassified category and getting a BSOD during
‘Common Scenario Stress With IO’.
Since then, I studied every single routine and did not find anything wrong,
I used checked build of my driver with debug messages and driver verifier
all options turned on except for low resource simulation. Nothing gave me
any clue that I can think of my driver related. I find that event viewer has
same errors many times from disk as:

‘The device, \Devie\Harddisk0\DR0, is not ready for access yet.’

The message seems to correspond to IO_ERROR: (NTSTATUS) 0xc000009d -
STATUS_DEVICE_NOT_CONNECTED. It seems to me as disk controller problem
(changed hdd with same result). Does anyone know any test to for disk
controller? Any suggestions from storage gurus?

BTW: I installed Vista 64 on another Dell machine and the test passed and
event viewer does not have any error messages from disk.

Thanks,
Hakim

****************************************************************************

HAL: Current Time: 2007-03-16, 20:18:28:500 1c7680842514d40
HAL: Wake Alarm Set: 2007-03-16, 20:19:14:413 1c768085daf11d0
HAL: Current Time: 2007-03-16, 20:19:37:500 1c768086b71ddc0
HAL: Wake Alarm Set: 2007-03-16, 20:20:33:798 1c768088d004260

*** Inpage error in C:\Windows\system32\services.exe:
The instruction at 000007FEFEDE5FE8 referenced memory at 00000000001CD088.
This failed because of error c000009d.
*** enter .exr 000000000245F3B0 for the exception record
*** enter .cxr 000000000245EEE0 for the context
*** then kb to get the faulting stack
Break instruction exception - code 80000003 (first chance)
0033:00000000771261f0 cc int 3 1: kd\> .exr 000000000245F3B0 ExceptionAddress: 000007fefede5fe8 ExceptionCode: c0000006 (In-page I/O error) ExceptionFlags: 00000000 NumberParameters: 3 Parameter[0]: 0000000000000000 Parameter[1]: 00000000001cd088 Parameter[2]: 00000000c000009d Inpage operation failed at 00000000001cd088, due to I/O error 00000000c000009d 1: kd\> .cxr 000000000245EEE0 rax=000000000245f500 rbx=000000000245f540 rcx=00000000001ccff0 rdx=0000000000000000 rsi=00000000001cceb0 rdi=0000000000000001 rip=000007fefede5fe8 rsp=000000000245f480 rbp=000000000016a040 r8=000000000245f500 r9=0000000000000013 r10=0000000000000000 r11=0000000000000004 r12=0000000000000000 r13=000000000013a110 r14=0000000000000000 r15=0000000000146460 iopl=0 nv up ei pl nz na pe nc cs=0033 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010202 0033:000007fefede5fe8 8b8198000000 mov eax,dword ptr [rcx+98h]
ds:002b:00000000001cd088=???????? 1: kd\> kb \*\*\* Stack trace for last set context - .thread/.cxr resets it RetAddr : Args to Child : Call Site 0000000000146460 : 0000000000000000 000000000013a110 000000000245f540 000000000245f540 : 0x7fefede5fe8 0000000000000000 : 000000000013a110 000000000245f540 000000000245f540 000007fefedc3701 : 0x146460
000000000013a110 : 000000000245f540 000000000245f540 000007fefedc3701
0000000000000000 : 0x0 000000000245f540 : 000000000245f540 000007fefedc3701 0000000000000000 0000000000000013 : 0x13a110
000000000245f540 : 000007fefedc3701 0000000000000000 0000000000000013
00000000001cceb0 : 0x245f540 000007fefedc3701 : 0000000000000000 0000000000000013 00000000001cceb0 000000000016a040 : 0x245f540
0000000000000000 : 0000000000000013 00000000001cceb0 000000000016a040
000000000245f540 : 0x7fefedc3701
0000000000000013 : 00000000001cceb0 000000000016a040 000000000245f540
000007fefede7112 : 0x0 00000000001cceb0 : 000000000016a040 000000000245f540 000007fefede7112 000000000016a040 : 0x13
000000000016a040 : 000000000245f540 000007fefede7112 000000000016a040
0000000000000000 : 0x1cceb0 000000000245f540 : 000007fefede7112 000000000016a040 0000000000000000 00000000001cc8b0 : 0x16a040
000007fefede7112 : 000000000016a040 0000000000000000 00000000001cc8b0
0000000000000000 : 0x245f540 000000000016a040 : 0000000000000000 00000000001cc8b0 0000000000000000 000000000245f500 : 0x7fefede7112 0000000000000000 : 00000000001cc8b0 0000000000000000 000000000245f500 000000000245f500 : 0x16a040
00000000001cc8b0 : 0000000000000000 000000000245f500 000000000245f500
0000000000000001 : 0x0 0000000000000000 : 000000000245f500 000000000245f500 0000000000000001 000007fefeddfdd4 : 0x1cc8b0
000000000245f500 : 000000000245f500 0000000000000001 000007fefeddfdd4
0000000000000000 : 0x0 000000000245f500 : 0000000000000001 000007fefeddfdd4 0000000000000000 0000000000000003 : 0x245f500
0000000000000001 : 000007fefeddfdd4 0000000000000000 0000000000000003
000000000016a040 : 0x245f500 000007fefeddfdd4 : 0000000000000000 0000000000000003 000000000016a040 0000000000000000 : 0x1
1: kd> .reload
Connected to Windows Vista 5744 x64 target, ptr64 TRUE
Loading Kernel Symbols

Loading User Symbols

Loading unloaded module list
…Unable to enumerate user-mode unloaded modules, Win32
error 30
1: kd> !analyze -v
Connected to Windows Vista 5744 x64 target, ptr64 TRUE
Loading Kernel Symbols

Loading User Symbols

Loading unloaded module list
…Unable to enumerate user-mode unloaded modules, Win32
error 30
*******************************************************************************
* *
* Exception Analysis *
* *
*******************************************************************************

FAULTING_IP:
RPCRT4!LRPC_VIEW_CACHE_BASE::FetchViewsForFreeing+8
0033:000007fefede5fe8 8b8198000000 mov eax,dword ptr [rcx+98h] EXCEPTION_RECORD: 000000000245f3b0 -- (.exr 245f3b0) ExceptionAddress: 000007fefede5fe8 (RPCRT4!LRPC_VIEW_CACHE_BASE::FetchViewsForFreeing+0x0000000000000008) ExceptionCode: c0000006 (In-page I/O error) ExceptionFlags: 00000000 NumberParameters: 3 Parameter[0]: 0000000000000000 Parameter[1]: 00000000001cd088 Parameter[2]: 00000000c000009d Inpage operation failed at 00000000001cd088, due to I/O error 00000000c000009d BUGCHECK_STR: IN_PAGE_ERROR DEFAULT_BUCKET_ID: STATUS_BREAKPOINT PROCESS_NAME: ntkrnlmp.exe ERROR_CODE: (NTSTATUS) 0xc0000006 - The instruction at "0x%08lx" referenced memory at "0x%08lx". The required data was not placed into memory because of an I/O error status of "0x%08lx". CONTEXT: 000000000245eee0 -- (.cxr 245eee0) rax=000000000245f500 rbx=000000000245f540 rcx=00000000001ccff0 rdx=0000000000000000 rsi=00000000001cceb0 rdi=0000000000000001 rip=000007fefede5fe8 rsp=000000000245f480 rbp=000000000016a040 r8=000000000245f500 r9=0000000000000013 r10=0000000000000000 r11=0000000000000004 r12=0000000000000000 r13=000000000013a110 r14=0000000000000000 r15=0000000000146460 iopl=0 nv up ei pl nz na pe nc cs=0033 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010202 RPCRT4!LRPC_VIEW_CACHE_BASE::FetchViewsForFreeing+0x8: 0033:000007fefede5fe8 8b8198000000 mov eax,dword ptr [rcx+98h]
ds:002b:00000000001cd088=???????? Resetting default scope IO_ERROR: (NTSTATUS) 0xc000009d - STATUS_DEVICE_NOT_CONNECTED EXCEPTION_STR: 0xc0000006_c000009d LAST_CONTROL_TRANSFER: from 000007fefede7112 to 000007fefede5fe8 STACK_TEXT: 000000000245f480 000007fefede7112 : 000000000016a040 0000000000000000 00000000001cc8b0 0000000000000000 : RPCRT4!LRPC_VIEW_CACHE_BASE::FetchViewsForFreeing+0x8 000000000245f4e0 000007fefeddfdd4 : 0000000000000000 0000000000000003 000000000016a040 0000000000000000 : RPCRT4!LRPC_SASSOCIATION::TrimCachedSections+0x32 000000000245f520 000007fefeddfc30 : 000000000016a040 00000000001466b0 000000000013a110 000007fe00000009 : RPCRT4!LRPC_ADDRESS::EnumerateAndCallEachAssociation+0xad 000000000245f590 000007fefeddfa2e : 000000000013a110 0000000000000001 000000000013a110 0000000000000059 : RPCRT4!RPC_SERVER::EnumerateAndCallEachAddress+0x168 000000000245f620 000007fefeddf74e : 0000000000000002 000007fefee2a7a0 000007fefeeb60b0 0000000000000000 : RPCRT4!PerformGarbageCollection+0x199 000000000245f650 000007fefede0209 : 0000000000000000 0000000000000000 0000000000000000 0000000000000000 : RPCRT4!LOADABLE_TRANSPORT::ProcessIOEvents+0x2a0 000000000245f700 000007fefede01bb : 0000000000000000 0000000000000000 0000000000000000 0000000000000000 : RPCRT4!ProcessIOEventsWrapper+0x9 000000000245f730 000007fefede0244 : 0000000000000000 0000000000000000 0000000000000000 0000000000000000 : RPCRT4!BaseCachedThreadRoutine+0x9b 000000000245f770 0000000076fd589d : 0000000000000000 0000000000000000 0000000000000000 0000000000000000 : RPCRT4!ThreadStartRoutine+0x24 000000000245f7a0 00000000771106f1 : 0000000000000000 0000000000000000 0000000000000000 0000000000000000 : kernel32!BaseThreadInitThunk+0xd 000000000245f7d0 0000000000000000 : 0000000000000000 0000000000000000 0000000000000000 00000000`00000000 : ntdll!RtlUserThreadStart+0x1d

FOLLOWUP_IP:
RPCRT4!LRPC_VIEW_CACHE_BASE::FetchViewsForFreeing+8
0033:000007fe`fede5fe8 8b8198000000 mov eax,dword ptr [rcx+98h]
SYMBOL_STACK_INDEX: 0
SYMBOL_NAME: RPCRT4!LRPC_VIEW_CACHE_BASE::FetchViewsForFreeing+8
FOLLOWUP_NAME: MachineOwner
MODULE_NAME: RPCRT4
IMAGE_NAME: RPCRT4.dll
DEBUG_FLR_IMAGE_TIMESTAMP: 45236cc5
STACK_COMMAND: .cxr 0x245eee0 ; kb
FAILURE_BUCKET_ID:
X64_IN_PAGE_ERROR_RPCRT4!LRPC_VIEW_CACHE_BASE::FetchViewsForFreeing+8
BUCKET_ID:
X64_IN_PAGE_ERROR_RPCRT4!LRPC_VIEW_CACHE_BASE::FetchViewsForFreeing+8
Followup: MachineOwner