INFO: Format of Event Log Data Created by ScsiPortLogErrorID: Q182335
|
On Windows NT, SCSI miniports call ScsiPortLogError to write errors to the system event log. This document describes the layout of the SCSI error message dump data that is displayed in the System Log.
When a SCSI miniport calls ScsiPortLogError, ScsiPort allocates an error
log packet and calls the appropriate routine to write to the system event
log. The error log packet is a structure of type IO_ERROR_LOG_PACKET as
defined in the Windows NT DDK file NTDDK.h:
typedef struct _IO_ERROR_LOG_PACKET { // Offset: Length:
UCHAR MajorFunctionCode; // 0x00 1
UCHAR RetryCount; // 0x01 1
USHORT DumpDataSize; // 0x02 2
USHORT NumberOfStrings; // 0x04 2
USHORT StringOffset; // 0x06 2
USHORT EventCategory; // 0x08 2
// 0x0a 2 padding bytes
NTSTATUS ErrorCode; // 0x0c 4
ULONG UniqueErrorValue; // 0x10 4
NTSTATUS FinalStatus; // 0x14 4
ULONG SequenceNumber; // 0x18 4
ULONG IoControlCode; // 0x1c 4
LARGE_INTEGER DeviceOffset; // 0x20 8
ULONG DumpData[1]; // 0x28 SCSIPORT specific
}IO_ERROR_LOG_PACKET, *PIO_ERROR_LOG_PACKET;
DumpData[0] = PathId
DumpData[1] = TargetId
DumpData[2] = Lun
DumpData[3] = ErrorCode
SCSI error Logged error
-------------------------- -----------------------
SP_BUS_PARITY_ERROR IO_ERR_PARITY
SP_UNEXPECTED_DISCONNECT IO_ERR_CONTROLLER_ERROR
SP_INVALID_RESELECTION IO_ERR_CONTROLLER_ERROR
SP_BUS_TIME_OUT IO_ERR_TIMEOUT
SP_PROTOCOL_ERROR IO_ERR_CONTROLLER_ERROR
SP_INTERNAL_ADAPTER_ERROR IO_ERR_CONTROLLER_ERROR
SP_IRQ_NOT_RESPONDING IO_ERR_INCORRECT_IRQL
SP_BAD_FW_ERROR IO_ERR_BAD_FIRMWARE
SP_BAD_FW_WARNING IO_WRN_BAD_FIRMWARE
SP_REQUEST_TIMEOUT IO_ERR_CONTROLLER_ERROR
Event ID: 11
Source: ScsiDrv
The driver detected a controller error on \Device\ScsiPort0.
Data (bytes):
0000: 0f 00 10 00 01 00 68 00
0008: 00 00 00 00 0b 00 04 c0
0010: 12 00 02 00 00 00 00 00
0018: 95 63 00 00 00 00 00 00
0020: 00 00 00 00 00 00 00 00
0028: 00 00 00 00 04 00 00 00
0030: 00 00 00 00 02 00 00 00
Data (words):
0000: 0010000f 00680001 00000000 c004000b
0010: 00020012 00000000 00006395 00000000
0020: 00000000 00000000 00000000 00000004
0030: 00000000 00000002
Offset Len Value
------ --- -----------
0 1 0x0f MajorFunctionCode 0xf = IRP_MJ_SCSI
1 1 0x00 RetryCount
2 2 0x0010 DumpDataSize 0x10 (16) bytes
4 2 0x0001 NumberOfStrings
6 2 0x0068 StringOffset
8 2 0x0000 EventCategory
a 2 0x0000 padding
c 4 0xc004000b ErrorCode (IO_ERR_xxx) IO_ERR_CONTROLLER_ERROR
10 4 0x00020012 UniqueErrorValue Unique miniport value
14 4 0x00000000 FinalStatus
18 4 0x00006395 SequenceNumber
1c 4 0x00000000 IoControlCode
20 8 0x00000000 DeviceOffset
0x00000000
28 4 0x00000000 PathId Path 0
2a 4 0x00000004 TargetId Target 4
30 4 0x00000000 Lun Lun 0
34 4 0x00000002 ErrorCode (SP_xxx) SP_UNEXPECTED_DISCONNECT
Event ID: 9
Source: ScsiDrv
The device, \Device\ScsiPort0, did not respond within the timeout
period.
Data (bytes):
0000: 0f 00 10 00 01 00 68 00 ......h.
0008: 00 00 00 00 09 00 04 c0 ........
0010: 00 01 00 00 00 00 00 00 ........
0018: 1b 62 0a 00 00 00 00 00 .b......
0020: 00 00 00 00 00 00 00 00 ........
0028: 00 00 00 00 05 00 00 00 ........
0030: 00 00 00 00 07 00 00 00 ........
Data (words):
0000: 0010000f 00680001 00000000 c0040009
0010: 00000100 00000000 000a621b 00000000
0020: 00000000 00000000 00000000 00000005
0030: 00000000 00000007
Offset Len Value
------ --- -----------
0 1 0x0f MajorFunctionCode 0xf = IRP_MJ_SCSI
1 1 0x00 RetryCount
2 2 0x0010 DumpDataSize 0x10 (16) bytes
4 2 0x0001 NumberOfStrings
6 2 0x0068 StringOffset
8 2 0x0000 EventCategory
a 2 0x0000 padding
c 4 0xc0040009 ErrorCode (IO_ERR_xxx) IO_ERR_TIMEOUT
10 4 0x00000100 UniqueErrorValue low word 256 (0x100)
14 4 0x00000000 FinalStatus
18 4 0x000a621b SequenceNumber
1c 4 0x00000000 IoControlCode
20 8 0x00000000 DeviceOffset
0x00000000
28 4 0x00000000 PathId Path 0
2a 4 0x00000005 TargetId Target 5
30 4 0x00000000 Lun Lun 0
34 4 0x00000007 ErrorCode (SP_xxx) SP_REQUEST_TIMEOUT
Event ID: 9
Source: ScsiDrv
The device, \Device\ScsiPort0, did not respond within the timeout
period.
Data (bytes):
0000: 0f 00 10 00 01 00 68 00 ......h.
0008: 00 00 00 00 09 00 04 c0 ........
0010: 01 01 00 50 00 00 00 00 ...P....
0018: 73 62 0a 00 00 00 00 00 sb......
0020: 00 00 00 00 00 00 00 00 ........
0028: 00 00 00 00 05 00 00 00 ........
0030: 00 00 00 00 07 00 00 00 ........
Data (words):
0000: 0010000f 00680001 00000000 c0040009
0010: 50000101 00000000 000a6273 00000000
0020: 00000000 00000000 00000000 00000005
0030: 00000000 00000007
Offset Len Value
------ --- -----------
0 1 0x0f MajorFunctionCode 0xf = IRP_MJ_SCSI
1 1 0x00 RetryCount
2 2 0x0010 DumpDataSize 0x10 (16) bytes
4 2 0x0001 NumberOfStrings
6 2 0x0068 StringOffset
8 2 0x0000 EventCategory
a 2 0x0000 padding
c 4 0xc0040009 ErrorCode (IO_ERR_xxx) IO_ERR_TIMEOUT
10 4 0x50000101 UniqueErrorValue
0x50 ASCSII "P"
0x00
0x0101 257
14 4 0x00000000 FinalStatus
18 4 0x000a6273 SequenceNumber
1c 4 0x00000000 IoControlCode
20 8 0x00000000 DeviceOffset
0x00000000
28 4 0x00000000 PathId Path 0
2a 4 0x00000005 TargetId Target 5
30 4 0x00000000 Lun Lun 0
34 4 0x00000007 ErrorCode (SP_xxx) SP_REQUEST_TIMEOUT
Refer to the Windows NT DDK documentation for specific information about SCSI miniport drivers.
Keywords : ntddkstorage
Version : WINNT:4.0
Platform : winnt
Issue type : kbinfo
Last Reviewed: March 5, 1999