]> git.openfabrics.org - ~emulex/infiniband.git/commitdiff
[SCSI] lpfc 8.3.32: Correct successful aborts returning error status
authorJames Smart <james.smart@emulex.com>
Tue, 12 Jun 2012 17:54:42 +0000 (13:54 -0400)
committerJames Bottomley <JBottomley@Parallels.com>
Fri, 20 Jul 2012 07:58:28 +0000 (08:58 +0100)
Signed-off-by: Alex Iannicelli <alex.iannicelli@emulex.com>
Signed-off-by: James Smart <james.smart@emulex.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
drivers/scsi/lpfc/lpfc_scsi.c

index d2ef8f4e925434705163cff0ade732d0440a05be..169b77b82b487c8cea694793c493ddfa1330c5a5 100644 (file)
@@ -4412,12 +4412,12 @@ lpfc_abort_handler(struct scsi_cmnd *cmnd)
        struct lpfc_iocbq *abtsiocb;
        struct lpfc_scsi_buf *lpfc_cmd;
        IOCB_t *cmd, *icmd;
-       int ret = SUCCESS;
+       int ret = SUCCESS, status = 0;
        DECLARE_WAIT_QUEUE_HEAD_ONSTACK(waitq);
 
-       ret = fc_block_scsi_eh(cmnd);
-       if (ret)
-               return ret;
+       status = fc_block_scsi_eh(cmnd);
+       if (status)
+               return status;
 
        spin_lock_irq(&phba->hbalock);
        /* driver queued commands are in process of being flushed */
@@ -4435,7 +4435,7 @@ lpfc_abort_handler(struct scsi_cmnd *cmnd)
                lpfc_printf_vlog(vport, KERN_WARNING, LOG_FCP,
                         "2873 SCSI Layer I/O Abort Request IO CMPL Status "
                         "x%x ID %d LUN %d\n",
-                        ret, cmnd->device->id, cmnd->device->lun);
+                        SUCCESS, cmnd->device->id, cmnd->device->lun);
                return SUCCESS;
        }
 
@@ -4762,7 +4762,7 @@ lpfc_device_reset_handler(struct scsi_cmnd *cmnd)
        unsigned tgt_id = cmnd->device->id;
        unsigned int lun_id = cmnd->device->lun;
        struct lpfc_scsi_event_header scsi_event;
-       int status;
+       int status, ret = SUCCESS;
 
        if (!rdata) {
                lpfc_printf_vlog(vport, KERN_ERR, LOG_FCP,
@@ -4803,9 +4803,9 @@ lpfc_device_reset_handler(struct scsi_cmnd *cmnd)
         * So, continue on.
         * We will report success if all the i/o aborts successfully.
         */
-       status = lpfc_reset_flush_io_context(vport, tgt_id, lun_id,
+       ret = lpfc_reset_flush_io_context(vport, tgt_id, lun_id,
                                                LPFC_CTX_LUN);
-       return status;
+       return ret;
 }
 
 /**
@@ -4829,7 +4829,7 @@ lpfc_target_reset_handler(struct scsi_cmnd *cmnd)
        unsigned tgt_id = cmnd->device->id;
        unsigned int lun_id = cmnd->device->lun;
        struct lpfc_scsi_event_header scsi_event;
-       int status;
+       int status, ret = SUCCESS;
 
        if (!rdata) {
                lpfc_printf_vlog(vport, KERN_ERR, LOG_FCP,
@@ -4870,9 +4870,9 @@ lpfc_target_reset_handler(struct scsi_cmnd *cmnd)
         * So, continue on.
         * We will report success if all the i/o aborts successfully.
         */
-       status = lpfc_reset_flush_io_context(vport, tgt_id, lun_id,
-                                       LPFC_CTX_TGT);
-       return status;
+       ret = lpfc_reset_flush_io_context(vport, tgt_id, lun_id,
+                                         LPFC_CTX_TGT);
+       return ret;
 }
 
 /**