[SCSI] bnx2fc: Improve error recovery by handling parity errors
authorBhanu Prakash Gollapudi <bprakash@broadcom.com>
Thu, 7 Jun 2012 09:19:35 +0000 (02:19 -0700)
committerJames Bottomley <JBottomley@Parallels.com>
Fri, 20 Jul 2012 07:58:23 +0000 (08:58 +0100)
commit5c17ae217ad13463f821c3bab774335777da9c33
tree681652b5df7088693a49d697b17d84fd261425c4
parentd075498c987623107f7bface4dad72fe9260a0d3
[SCSI] bnx2fc: Improve error recovery by handling parity errors

During parity errors, the ramrods are not issued to FW. bnx2fc waits for the
timeout value, and proceeds with cleaning up the IOs. Since we are already
out-of-sync with FW, cleanup commands timeout too, and do not get the
completion.  This operation takes 36 secs for each session to upload causing
huge delays. To fix this, bnx2fc now gets a PARITY_ERROR from cnic driver, and
upon failure, the driver does not issue any commands to the FW and finishes the
upload process sooner.

Signed-off-by: Bhanu Prakash Gollapudi <bprakash@broadcom.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
drivers/scsi/bnx2fc/bnx2fc.h
drivers/scsi/bnx2fc/bnx2fc_hwi.c
drivers/scsi/bnx2fc/bnx2fc_tgt.c