James,
Thanks for getting back so soon. I just have a too long of the holiday.
First of,
> Have any of your WMI routines been called?
Nop. I implement only two functions (out of six wmi functions)
(QueryWmiRegInfo, and QueryWmiDataBlock) and none of these two function got
called.
In particular, have you built
> (perhaps as your own call from HwScsiFindAdapter) your WMILIB structure,
> which specifies your WMI routine entry points? Typically this structure
> would be hung off (pointed to by) your adapter (device) extension.
Yes. I stare at this structure many times and still could not find any error
yet.
{
...
WmiLibContext = &dvx->WmiLibContext;
WmiLibContext->GuidList = A154xGuidList;
DebugPrint((1," GuidCount: %d\n", A154xGuidCount));
WmiLibContext->GuidCount = A154xGuidCount;
WmiLibContext->QueryWmiRegInfo = A154xQueryWmiRegInfo;
WmiLibContext->QueryWmiDataBlock = A154xQueryWmiDataBlock;
WmiLibContext->SetWmiDataItem = NULL;
WmiLibContext->SetWmiDataBlock = NULL;
WmiLibContext->WmiFunctionControl = NULL;
WmiLibContext->ExecuteWmiMethod = NULL;
}
Further,
> has your HwScsiStartIo been called with any WMI-type SRBs? Has your WMI
> Query Registration routine (which would be specified in the WMILIB
> structure) been called?
Nop. I 'debugprint' a string showing the SRB function everytime StartIO
starts. None is showing WMI function request.
>
> Next, do another '!analyze -v' and let me see the summary, the failing
> instruction and the failing call stack.
Connected to Windows XP 2600 x86 compatible target, ptr64 FALSE
Loading Kernel Symbol
..................................................................................................
Loading unloaded module list
.........
Loading User Symbol
*******************************************************************************
*
*
* Bugcheck Analysis
*
*
*******************************************************************************
Use !analyze -v to get detailed debugging information.
BugCheck 7E, {c0000005, ef54fae6, f51ebaa4, f51eb7a4}
Probably caused by : SCSIPORT.SYS ( SCSIPORT!SpWmiPassToMiniPort+11a )
Followup: MachineOwner
---------
nt!RtlpBreakWithStatusInstruction:
80aaad34 cc int 3
kd> !analyze -
*******************************************************************************
*
*
* Bugcheck Analysis
*
*
*******************************************************************************
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: c0000005, The exception code that was not handled
Arg2: ef54fae6, The address that the exception occurred at
Arg3: f51ebaa4, Exception Record Address
Arg4: f51eb7a4, Context Record Address
Debugging Details:
------------------
ERROR_CODE: (NTSTATUS) 0xc0000005 - The instruction at "0x%08lx" referenced
memory at "0x%08lx". The memory could not be "%s".
FAULTING_IP:
SCSIPORT!SpWmiPassToMiniPort+11a
ef54fae6 8b4804 mov ecx,[eax+0x4]
EXCEPTION_PARAMETER1: f51ebaa4
CONTEXT: f51eb7a4 -- (.cxr fffffffff51eb7a4)
eax=00000000 ebx=81fa71e8 ecx=00000000 edx=00000000 esi=f51ebc7c edi=f51ebbf4
eip=ef54fae6 esp=f51ebb6c ebp=f51ebc14 iopl=0 nv up ei ng nz ac po cy
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000 efl=00010297
SCSIPORT!SpWmiPassToMiniPort+0x11a:
ef54fae6 8b4804 mov ecx,[eax+0x4]
Resetting default scope
DEFAULT_BUCKET_ID: DRIVER_FAULT
BUGCHECK_STR: 0x7E
LAST_CONTROL_TRANSFER: from ef55076a to ef54fae6
STACK_TEXT:
f51ebc14 ef55076a 81f34038 00000008 f51ebc7c
SCSIPORT!SpWmiPassToMiniPort+0x11a
f51ebc60 ef550eea 81f34038 001ebc7c 81f34038
SCSIPORT!SpWmiIrpRegisterRequest+0x16b
f51ebc8c ef52858d 81f340f0 81f15810 81f15810
SCSIPORT!ScsiPortSystemControlIrp+0xe6
f51ebca0 80a20812 81f34038 81f15810 c00000bb
SCSIPORT!ScsiPortGlobalDispatch+0x1b
f51ebcb8 80c06c9e f51ebd40 81f15810 81f5fc78 nt!IopfCallDriver+0x4f
f51ebce8 80c06e61 81f15810 00000008 81f34038 nt!WmipForwardWmiIrp+0x23b
f51ebd14 80c0912d 00000008 81f34038 00000000 nt!WmipSendWmiIrp+0x8b
f51ebd50 80c092ae 82034b38 00000000 82034b38 nt!WmipRegisterOrUpdateDS+0xa3
f51ebd64 80c0a201 82034b38 82063020 80af1e7c nt!WmipRegisterDS+0x42
f51ebd80 80ab9ebb 00000000 00000000 82063020 nt!WmipRegistrationWorker+0x101
f51ebdac 80baee56 00000000 00000000 00000000 nt!ExpWorkerThread+0x10d
f51ebddc 80ac815e 80ab9dae 80000001 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16
FOLLOWUP_IP:
SCSIPORT!SpWmiPassToMiniPort+11a
ef54fae6 8b4804 mov ecx,[eax+0x4]
SYMBOL_STACK_INDEX: 0
FOLLOWUP_NAME: MachineOwner
SYMBOL_NAME: SCSIPORT!SpWmiPassToMiniPort+11a
MODULE_NAME: SCSIPORT
IMAGE_NAME: SCSIPORT.SYS
DEBUG_FLR_IMAGE_TIMESTAMP: 3d6dd526
STACK_COMMAND: .cxr fffffffff51eb7a4 ; kb
BUCKET_ID: 0x7E_SCSIPORT!SpWmiPassToMiniPort+11a
Followup: MachineOwner
---------
Further, do '!lmi scsiport.sys' for
> me. I need to narrow down where in SpWmiPassToMiniPort the error occurs
> (presuming it is still failing in that routine).
>
kd> !lmi scsiport.sys
Loaded Module Info: [scsiport.sys]
Module: SCSIPORT
Base Address: ef528000
Image Name: SCSIPORT.SYS
Machine Type: 332 (I386)
Time Stamp: 3d6dd526 Thu Aug 29 01:02:46 2002
Size: 31100
CheckSum: 3e6f6
Characteristics: 10e
Debug Data Dirs: Type Size VA Pointer
CODEVIEW 25, 13364, 13364 RSDS - GUID: (0x fff6751,
0x251a, 0x456a, 0xb6, 0x2b, 0x36, 0xf3, 0xc5, 0xcb, 0xbe, 0xb5)
Age: 1, Pdb: scsiport.pdb
Image Type: MEMORY - Image read successfully from loaded memory.
Symbol Type: PDB - Symbols loaded successfully from symbol server.
D:\Download\MS_Symbol_store\scsiport.pdb\0FFF6751251A456AB62B36F3C5CBBEB51\scsiport.pdb
Load Report: public symbols , not source indexed
D:\Download\MS_Symbol_store\scsiport.pdb\0FFF6751251A456AB62B36F3C5CBBEB51\scsiport.pdb
Thank you for looking into this for me. This is greatly appreciated.
Long
Manage Your Profile |Legal |Contact Us |MSDN Flash Newsletter
©2005 Microsoft Corporation. All rights reserved. Terms of Use |Trademarks
|Privacy Statement