Interpretation of the QLA2xxx Windows Event Log Error Codes. (For driver versions prior to 9.00.00) Additional event logging has been added to the QL2x00 Windows miniport drivers for trouble shooting customer problems in the field. The event information is viewed using the Windows Event Viewer. Events logged by the QL2x00 drivers are listed with the Source field set to "ql2100" or "ql2200" or "ql2300" and the Event field set to "11". Double click on the event entry to view the event details, then set the data format to "Words". The detailed event code is displayed at offset 0x34. Below is a list of detailed event codes for the QL2x00. For some of the event codes, additional data will be recorded in the least significant 16 bits of the longword. Additional data may also be recorded in the long word at offset 0x10. There is a FAST!UTIL parameter to enable additional event logging. The event codes listed below with a "*" are enabled with this parameter. By default, these events are not logged. These additional events, even though they are flagged in the event log as error events should be treated as informational events and are strictly used for gathering additional information for debugging/analyzing purposes. Events that are logged even without extended event logging being enables are "true" error events (those without a "*" or "**" in front of them). In general, these error events are logged because of some error conditions. The event codes listed below with two "**" are obsolete. Table of events logged by the QLA2x00 Windows driver: Event Code Additional Data Offset Offset 0x34 0x10 4001xxxx yyyy00zz Description Invalid mailbox command OP Code Explanations Suggested Action xxxx = mailbox1 yyyy = mailbox2 4002xxxx yyyy00zz zz = command Host interface error xxxx = mailbox1 Hardware DMA error, replace adapter yyyy = mailbox2 zz = command Mailbox command xxxx = mailbox1 test failed yyyy = mailbox2 zz = command yyyy00zz Mailbox command xxxx = mailbox1 error yyyy = mailbox2 zz = command yyyy00zz Login Fabric port xx = adapter state, mailbox command yyyyyy = port id, zz error = loop id yyyy00zz Mailbox command xxxx = mailbox1 parameter error yyyy = mailbox2 zz = command yyyyzzzz Firmware AEN xxxx = mailbox1 Please send the event (8002): System yyyy = mailbox2 data to Qlogic support error zzzz = mailbox3 for analysis by the firmware group yyyyzzzz Firmware AEN xxxx = mailbox1 Please send the event (8003): Request yyyy = mailbox2 data to Qlogic support queue transfer zzzz = mailbox3 for analysis by the error firmware group yyyyzzzz Firmware AEN xxxx = mailbox1 Please send the event (8004): Response yyyy = mailbox2 data to Qlogic support queue transfer zzzz = mailbox3 for analysis by the error firmware group 0000xxxx Firmware AEN xxxx = mailbox1 Not logged during (8010): LIP normal operation. This occurred is not an error. Information only. Additional Description OP Code Suggested Action Data Explanations 4003xxxx yyyy00zz 4005xxxx 4005xx6F 4006xxxx 8002xxxx 8003xxxx 8004xxxx * 80100000 Event Code Offset 0x34 * 80110000 Offset 0x10 xxxxyyzz Firmware AEN (8011): Link up 2200: Not logged during normal operation. xxxx = current ISP connection mode 0 = Loop This is not an error. Information only. 1 = P2P yy = ISP connection option 0 = Loop, 1 = P2P, 2 = Loop->P2P, 3 = P2P->Loop zz = starting loop id for remote devices 2100: xxxx = 0000 yyyy = 0000 * 00000000 80120000 * 0000xxxx 80130000 * xxxxyyyy 80480000 Firmware AEN (8012): Link down error Firmware AEN (8013): LIP reset occurred Firmware AEN (8048): RND error Not logged during normal operation. xxxx = mailbox1 xxxx = mailbox1 provided by firmware This is not an error. Information only. Not logged during normal operation. This is not an error. Information only. Not logged during normal operation. This is not an error, It is intended to provide additional data yyyy = mailbox2 provided by firmware Event Code Additional Data Offset Offset 0x34 0x10 **F0000000 00000000 Description Restarting Firmware Please send the event data to QLogic support for detail interpretation by the firmware group OP Code Suggested Action Explanations Initial driver load or Loop down longer than 4 minutes This is not an error. Information only. F0010000 0000xxxx Invalid handle from xxxx = handle Please send the event Firmware data to QLogic support for analysis by the firmware group F0020000 000000xx Invalid entry type in xx = response Please send the event response queue queue entry type data to QLogic support for analysis by the firmware group F0030002 00xx00yy Firmware IO xx = CDB Please pass the event completion status opcode, data to QLogic support (02): A DMA error for analysis by the occurred yy = target loop firmware group ID F0030003 00xx00yy Firmware IO xx = CDB Please pass the event completion status opcode data to QLogic support (03): Transport error for analysis by the yy = target loop firmware group ID * F0030004 00xx00yy Firmware IO xx = CDB Not logged during completion status opcode, normal operation. (04): The Lip reset occurred yy = target loop This is not an error. ID Information only. * F0030005 00xx00yy Firmware IO xx = CDB Not logged during completion status opcode, normal operation. This (05): IO aborted by is not an error. OS yy = target loop Information only. ID Event Additional Description OP Code Suggested Action Code Data Explanations Offset 0x34 * F0030006 Offset 0x10 00xx00yy F003001C 00xx00yy Firmware IO completion xx = CDB status (06): IO timeout opcode, yy = target loop ID Firmware IO completion xx = CDB status (1c): Target opcode, yy = responded with queue target loop ID Please send the event data & Fc trace to QLogic support for analysis by the firmware group full Firmware IO completion status (28): Target port not currently logged in F0030029 00xx00yy Firmware IO completion status (29): Target port logged out F003002A 00xx00yy Firmware IO completion status (2A): Port configuration changed F0060000 000000xx Mailbox command timeout error F0030028 00xx00yy F0070000 0000xxxx F0080000 0000xxxx * 0000xxxx F00A0000 xx = CDB opcode, yy = target loop ID xx = CDB opcode, yy = target loop ID xx = CDB opcode, yy = target loop ID xx = mailbox command opcode Please send the event data & driver trace to QLogic support for analysis by the driver & firmware group Invalid response queue xxxx = response Please send the event pointer from firmware queue pointer data & driver trace to QLogic support for analysis by the driver & firmware group Invalid/unexpected xxxx = async Please send the event async event code from event code data & driver trace to firmware QLogic support for analysis by the driver & firmware group Firmware state during xxxx = firmware Not logged during adapter initialization state normal operation. This is not an error. Firmware state: Information only. 0000 = Loop 0001 = FL_Port 0002 = N_Port to N_Port 0003 = F_Port 0000 = Configuration wait 0001 = Waiting for AL PA 0002 = Waiting for login 0003 = Ready 0004 = Loss of sync Event Code Additional Data Description 0005 = Error OP Code Explanations Offset Offset 0x34 0x10 F00B0000 00000000 Reset ISP chip failed F00D0000 00000000 Failed to allocate noncached memory F00E0000 00000000 Failed to map ISP registers F00F0000 00000000 Failed to load firmware F0100000 0000xxxx Failed to start xxxx = mailbox0 firmware F0110000 0000xxxx Failed to initialize xxxx = mailbox0 firmware F0120000 0000xxxx Failed to get firmware xxxx = mailbox0 state * 00000000 Firmware AEN (8014): F0130000 Port database changed * xxxxxxxx F0140000 * xxxxyyzz F0150000 Suggested Action This is not an error. Information only. Firmware AEN (8015): xxxx = RSCN Information This is not an RSCN error. Information only. Name server query xxxx = response status This is not an rejected error. Information yy = 'Reason Code' only. zz = 'Explanation Code' * F0170000 F0180000 * F0190000 F01A0000 * F01B0000 Event Code Offset 0x34 (Valid if reason code is 0x09) e.g. if zz = 0x09, yy = 07, this means no SCSI device found 00xxxxxx Fabric port login (for xxxxxx = Port Id This is not an information only) error. Information only. 000000xx Excessive link errors. xx = Number of link Loop down errors per second 00000000 Verify firmware checksum failure 0000xxxx Invalid IP handle from xxxx = IP handle RISC 000000xx Device marked offline xx = Loop Id of device This is not an after being 'not ready' error. longer than port down Information retry count only. Additional Description OP Code Suggested Data Explanations Action Offset 0x10 * 000000xx F01C0000 * 00000000 F01D0000 * yyyyzzzz F01Exxxx * zzzzzzzz F01Fxxyy Bad type field in IOCB xx = IOCB type from firmware Error down loading post firmware Error running post xxxx = mailbox0 firmware yyyy = mailbox1 DMA 64 bit (PAE) configuration (for information only) zzzz = mailbox2 xx = DMA 64 Bit Address flag set by Windows yy = DMA 64 Bit Address flag set by driver F0200000 xxxxyyyy zzzzzzzz = driver adapter flags Error ISP not accessible xxxx = ISP host command and control * xxyy00zz F0210000 ISP connection option/topology (for information only) yyyy = ISP interrupt status xx = ISP connection This is not an option from NVRAM error. Information only. yy = previous ISP topology zz = current ISP topology Topology Code: 0000 = Loop 0001 = FL_Port 0002 = N_Port to N_Port * 0000xxxx F0220000 * xxxxyyyy F0230000 * xxxxxxxx F0240000 * xxxxxxxx F0250000 0003 = F_Port External risc ram parity xxxx = number of error parity errors detected Sub vendor ID did not xxxx = actual submatch (for information vendor ID only) yyyy = expected subvendor ID Invalid interrupt status xxxxxxxx = interrupt status value Error assigning slot xxxxxxxx = status resources code returned from the OS Events used and logged by the QLDirect Optimizing & Multipath Driver: Event Code Additional Data Offset 0x34 Offset 0x10 Description Explanation A0000001 00000000 Timeout occurred. The QLDirect driver sent an IO request to the miniport driver, and did not receive a response from the miniport driver in the timeout period for that request. The miniport driver normally works with the HBA firmware to time outstanding IOs. This error indicates that the miniport mechanism did not work and the QLDirect mechanism had to time out the request. QLDirect will attempt to reset the miniport/HBA by issuing a bus reset (see event A0000008 below). A0000002 00000000 SRB Extension The QLDirect driver was unable to allocate a allocation failed secondary data structure required to process an IO request. The IO request will be terminated with an error status. The number of SRB Extensions available is controlled a registry setting that is set up when QLDirect is installed. Re-install QLDirect and select a higher value for the maximum number of concurrent outstanding commands. A0000004 00000000 Address The QLDirect driver was passed an IO request translation from an upper-level device driver that contained failed an illegal memory address for a data transfer. The request will be passed on to the SCSI port driver to log and handle the error. A0000005 00000000 Completion The miniport driver is attempting to notify the queue is full. QLDirect driver that an IO is complete, but the QLDirect driver cannot process the completion. A0000006 00000000 Pool allocation The QLDirect driver failed to allocate memory failed. from non-paged pool A0000007 00000000 Scatter/gather The QLDirect driver was passed an IO request build failed. from an upper-level device driver, but was unable to build a memory scatter/gather list to map the transfer. The IO request will be returned to the upper-level device driver with error status. A0000008 00000000 Resetting bus. The QLDirect driver has detected an error condition (such as I/O timeout), and is attempting to recover from the error by issuing a SCSI reset bus to that miniport driver or HBA. There are other events/messages associated with appropriate descriptions that are also being logged by the Optimizing & Multipath Driver.