linux/include/scsi/fc
Yi Zou 3b64b18811 [SCSI] libfc: fix lun reset failure bugs in fc_fcp_resp handling of FCP_RSP_INFO
In LUN RESET testing involving NetApp targets, it is observed that LUN
RESET is failing. The fc_fcp_resp() is not completing the completion
for the LUN RESET task since fc_fcp_resp assumes that the FCP_RSP_INFO
is 8 bytes with the 4 byte reserved field, where in case of NetApp targets
the FCP_RSP to LUN RESET only has 4 bytes of FCP_RSP_INFO. This leads
fc_fcp_resp to error out w/o completing the task completion, eventually
causing LUN RESET to be escalated to host reset, which is not very nice.

Per FCP-3 r04, clause 9.5.15 and Table 23, the FCP_RSP_INFO field can be either
4 bytes or 8 bytes, with the last 4 bytes as "Reserved (if any)". Therefore it
is valid to have 4 bytes FCP_RSP_INFO like some of the NetApp targets behave.
Fixing this by validating the FCP_RSP_INFO against both the two spec allowed
length.

Reported-by: Frank Zhang <frank_1.zhang@intel.com>
Signed-off-by: Yi Zou <yi.zou@intel.com>
Tested-by: Ross Brattain <ross.b.brattain@intel.com>
Signed-off-by: Robert Love <robert.w.love@intel.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
2012-10-07 11:52:55 +01:00
..
fc_els.h [SCSI] libfc: add FLOGI state to rport for VN2VN 2010-07-28 09:05:53 -05:00
fc_encaps.h [SCSI] FC protocol definition header files 2008-12-29 11:24:32 -06:00
fc_fc2.h trivial: remove unnecessary semicolons 2009-09-21 15:14:58 +02:00
fc_fcoe.h [SCSI] fcoe: clean up TBD comments in FCoE prototype header 2010-07-27 12:01:46 -05:00
fc_fcp.h [SCSI] libfc: fix lun reset failure bugs in fc_fcp_resp handling of FCP_RSP_INFO 2012-10-07 11:52:55 +01:00
fc_fip.h [SCSI] libfcoe: add protocol description of FIP VN2VN mode 2010-07-28 09:05:55 -05:00
fc_fs.h [SCSI] libfc: Export FC headers 2009-12-04 12:01:05 -06:00
fc_gs.h [SCSI] libfc: Export FC headers 2009-12-04 12:01:05 -06:00
fc_ms.h [SCSI] libfc: Add support for FDMI 2012-02-19 08:08:58 -06:00
fc_ns.h [SCSI] fc: Add GSPN_ID request to header file 2011-02-25 12:02:19 -05:00
Kbuild [SCSI] libfc: Export FC headers 2009-12-04 12:01:05 -06:00