diff options
author | James Smart <james.smart@emulex.com> | 2012-06-12 13:54:42 -0400 |
---|---|---|
committer | James Bottomley <JBottomley@Parallels.com> | 2012-07-20 03:58:28 -0400 |
commit | 3a70730aa06c37d46086ecdbca7107531fe2d2c5 (patch) | |
tree | 0be7b073ff88434d0246da208fa85bb242e552f1 /drivers/scsi/lpfc | |
parent | 618a5230b8fa62bc7901b8b754b4379b3fcfa0f9 (diff) |
[SCSI] lpfc 8.3.32: Correct successful aborts returning error status
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>
Diffstat (limited to 'drivers/scsi/lpfc')
-rw-r--r-- | drivers/scsi/lpfc/lpfc_scsi.c | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/drivers/scsi/lpfc/lpfc_scsi.c b/drivers/scsi/lpfc/lpfc_scsi.c index d2ef8f4e9254..169b77b82b48 100644 --- a/drivers/scsi/lpfc/lpfc_scsi.c +++ b/drivers/scsi/lpfc/lpfc_scsi.c | |||
@@ -4412,12 +4412,12 @@ lpfc_abort_handler(struct scsi_cmnd *cmnd) | |||
4412 | struct lpfc_iocbq *abtsiocb; | 4412 | struct lpfc_iocbq *abtsiocb; |
4413 | struct lpfc_scsi_buf *lpfc_cmd; | 4413 | struct lpfc_scsi_buf *lpfc_cmd; |
4414 | IOCB_t *cmd, *icmd; | 4414 | IOCB_t *cmd, *icmd; |
4415 | int ret = SUCCESS; | 4415 | int ret = SUCCESS, status = 0; |
4416 | DECLARE_WAIT_QUEUE_HEAD_ONSTACK(waitq); | 4416 | DECLARE_WAIT_QUEUE_HEAD_ONSTACK(waitq); |
4417 | 4417 | ||
4418 | ret = fc_block_scsi_eh(cmnd); | 4418 | status = fc_block_scsi_eh(cmnd); |
4419 | if (ret) | 4419 | if (status) |
4420 | return ret; | 4420 | return status; |
4421 | 4421 | ||
4422 | spin_lock_irq(&phba->hbalock); | 4422 | spin_lock_irq(&phba->hbalock); |
4423 | /* driver queued commands are in process of being flushed */ | 4423 | /* driver queued commands are in process of being flushed */ |
@@ -4435,7 +4435,7 @@ lpfc_abort_handler(struct scsi_cmnd *cmnd) | |||
4435 | lpfc_printf_vlog(vport, KERN_WARNING, LOG_FCP, | 4435 | lpfc_printf_vlog(vport, KERN_WARNING, LOG_FCP, |
4436 | "2873 SCSI Layer I/O Abort Request IO CMPL Status " | 4436 | "2873 SCSI Layer I/O Abort Request IO CMPL Status " |
4437 | "x%x ID %d LUN %d\n", | 4437 | "x%x ID %d LUN %d\n", |
4438 | ret, cmnd->device->id, cmnd->device->lun); | 4438 | SUCCESS, cmnd->device->id, cmnd->device->lun); |
4439 | return SUCCESS; | 4439 | return SUCCESS; |
4440 | } | 4440 | } |
4441 | 4441 | ||
@@ -4762,7 +4762,7 @@ lpfc_device_reset_handler(struct scsi_cmnd *cmnd) | |||
4762 | unsigned tgt_id = cmnd->device->id; | 4762 | unsigned tgt_id = cmnd->device->id; |
4763 | unsigned int lun_id = cmnd->device->lun; | 4763 | unsigned int lun_id = cmnd->device->lun; |
4764 | struct lpfc_scsi_event_header scsi_event; | 4764 | struct lpfc_scsi_event_header scsi_event; |
4765 | int status; | 4765 | int status, ret = SUCCESS; |
4766 | 4766 | ||
4767 | if (!rdata) { | 4767 | if (!rdata) { |
4768 | lpfc_printf_vlog(vport, KERN_ERR, LOG_FCP, | 4768 | lpfc_printf_vlog(vport, KERN_ERR, LOG_FCP, |
@@ -4803,9 +4803,9 @@ lpfc_device_reset_handler(struct scsi_cmnd *cmnd) | |||
4803 | * So, continue on. | 4803 | * So, continue on. |
4804 | * We will report success if all the i/o aborts successfully. | 4804 | * We will report success if all the i/o aborts successfully. |
4805 | */ | 4805 | */ |
4806 | status = lpfc_reset_flush_io_context(vport, tgt_id, lun_id, | 4806 | ret = lpfc_reset_flush_io_context(vport, tgt_id, lun_id, |
4807 | LPFC_CTX_LUN); | 4807 | LPFC_CTX_LUN); |
4808 | return status; | 4808 | return ret; |
4809 | } | 4809 | } |
4810 | 4810 | ||
4811 | /** | 4811 | /** |
@@ -4829,7 +4829,7 @@ lpfc_target_reset_handler(struct scsi_cmnd *cmnd) | |||
4829 | unsigned tgt_id = cmnd->device->id; | 4829 | unsigned tgt_id = cmnd->device->id; |
4830 | unsigned int lun_id = cmnd->device->lun; | 4830 | unsigned int lun_id = cmnd->device->lun; |
4831 | struct lpfc_scsi_event_header scsi_event; | 4831 | struct lpfc_scsi_event_header scsi_event; |
4832 | int status; | 4832 | int status, ret = SUCCESS; |
4833 | 4833 | ||
4834 | if (!rdata) { | 4834 | if (!rdata) { |
4835 | lpfc_printf_vlog(vport, KERN_ERR, LOG_FCP, | 4835 | lpfc_printf_vlog(vport, KERN_ERR, LOG_FCP, |
@@ -4870,9 +4870,9 @@ lpfc_target_reset_handler(struct scsi_cmnd *cmnd) | |||
4870 | * So, continue on. | 4870 | * So, continue on. |
4871 | * We will report success if all the i/o aborts successfully. | 4871 | * We will report success if all the i/o aborts successfully. |
4872 | */ | 4872 | */ |
4873 | status = lpfc_reset_flush_io_context(vport, tgt_id, lun_id, | 4873 | ret = lpfc_reset_flush_io_context(vport, tgt_id, lun_id, |
4874 | LPFC_CTX_TGT); | 4874 | LPFC_CTX_TGT); |
4875 | return status; | 4875 | return ret; |
4876 | } | 4876 | } |
4877 | 4877 | ||
4878 | /** | 4878 | /** |