During an uplink toggle test all error handling is done via timeout and firmware error conditions which can occur concurrently: - SCSI layer timeouts - Error detect CQEs - Firmware detected underruns - ABTS timeouts All these concurrent events require more defensive checks in the driver including: - Check both internally and externally generated aborts to make sure the xid is not already been aborted in another context or in cleanup. - Check back pointers in qedf_cmd_timeout to verify the context of the io_req, fcport and qedf_ctx - Check rport state in host reset handler to not reset the whole host if the rport is already uploaded or in the process of relogin - Check to state for an fcport before initiating a middle path ELS request Signed-off-by: Chad Dupuis <chad.dupuis@cavium.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> |
||
---|---|---|
.. | ||
drv_fcoe_fw_funcs.c | ||
drv_fcoe_fw_funcs.h | ||
drv_scsi_fw_funcs.c | ||
drv_scsi_fw_funcs.h | ||
Kconfig | ||
Makefile | ||
qedf_attr.c | ||
qedf_dbg.c | ||
qedf_dbg.h | ||
qedf_debugfs.c | ||
qedf_els.c | ||
qedf_fip.c | ||
qedf_hsi.h | ||
qedf_io.c | ||
qedf_main.c | ||
qedf_version.h | ||
qedf.h |