[SCSI] qla2xxx: Correct residual-count handling discrepancies during UNDERRUN handling.
authorAndrew Vasquez <andrew.vasquez@qlogic.com>
Fri, 19 Oct 2007 22:59:18 +0000 (15:59 -0700)
committerJames Bottomley <jejb@mulgrave.localdomain>
Tue, 23 Oct 2007 19:54:41 +0000 (15:54 -0400)
commit6acf8190025e9c4ea513d4084ff089d476112816
treed91f79a0afcb36abc91d1bbf2dc8c98d7f6ac869
parent285d0321d15cf3130b3347a207ceae652ccc95b5
[SCSI] qla2xxx: Correct residual-count handling discrepancies during UNDERRUN handling.

For recent ISPs, software during CS_UNDERRUN handling must
determine if the two residuals, firmware-calculated and FCP_RSP,
are different to recognize if a frame has been dropped.  Update
the driver to catch this condition, and clear the
SS_RESIDUAL_UNDER and lscsi_status bits.  This logic is
consistent with what earlier firmwares did by explicitly
cracking open the FCP_RSP statuses and clearing
SS_RESIDUAL_UNDER.

Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
drivers/scsi/qla2xxx/qla_isr.c