[SCSI] libfc: bug in erroring out upon FCP_RSP_LEN_VAL in fc_fcp_resp
Yi Zou [Fri, 9 Apr 2010 21:23:05 +0000 (14:23 -0700)]
fc_fcp_resp is assuming when FCP_SNS_LEN_VAL is set, the FCP_RSP_LEN_VAL
is not, which is not true. This leads to not copying the sense data and
error out a valid FCP_RSP.

Signed-off-by: Yi Zou <yi.zou@intel.com>
Signed-off-by: Robert Love <robert.w.love@intel.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>

drivers/scsi/libfc/fc_fcp.c

index 220c4bc..f99d66f 100644 (file)
@@ -844,8 +844,7 @@ static void fc_fcp_resp(struct fc_fcp_pkt *fsp, struct fc_frame *fp)
                                         * exit here
                                         */
                                        return;
-                               } else
-                                       goto err;
+                               }
                        }
                        if (flags & FCP_SNS_LEN_VAL) {
                                snsl = ntohl(rp_ex->fr_sns_len);