aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi
diff options
context:
space:
mode:
authorAndrew Vasquez <andrew.vasquez@qlogic.com>2005-09-20 16:25:53 -0400
committerJames Bottomley <jejb@mulgrave.(none)>2005-10-28 14:25:26 -0400
commit9a41a62b74388827998253d62c58707e63cc5874 (patch)
tree71d71691575f75df21569f60dcb1c7d6e19ebd69 /drivers/scsi
parent7a691bd34130920bef4d118a3f555ebc48544a63 (diff)
[SCSI] qla2xxx: remove eh_active checks in qla2xxx error handling
Here's a patch which drops the eh_active checks in the qla2xxx eh_handler callbacks. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/scsi')
-rw-r--r--drivers/scsi/qla2xxx/qla_os.c41
1 files changed, 15 insertions, 26 deletions
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c
index 74a26a4a69b6..92976c235ee2 100644
--- a/drivers/scsi/qla2xxx/qla_os.c
+++ b/drivers/scsi/qla2xxx/qla_os.c
@@ -762,29 +762,19 @@ qla2xxx_eh_device_reset(struct scsi_cmnd *cmd)
762 goto eh_dev_reset_done; 762 goto eh_dev_reset_done;
763 } 763 }
764 764
765 /* 765 /* Flush outstanding commands. */
766 * If we are coming down the EH path, wait for all commands to 766 if (qla2x00_eh_wait_for_pending_target_commands(ha, id))
767 * complete for the device. 767 ret = FAILED;
768 */ 768 if (ret == FAILED) {
769 if (cmd->device->host->eh_active) { 769 DEBUG3(printk("%s(%ld): failed while waiting for commands\n",
770 if (qla2x00_eh_wait_for_pending_target_commands(ha, id)) 770 __func__, ha->host_no));
771 ret = FAILED; 771 qla_printk(KERN_INFO, ha,
772 772 "%s: failed while waiting for commands\n", __func__);
773 if (ret == FAILED) { 773 } else
774 DEBUG3(printk("%s(%ld): failed while waiting for " 774 qla_printk(KERN_INFO, ha,
775 "commands\n", __func__, ha->host_no)); 775 "scsi(%ld:%d:%d): DEVICE RESET SUCCEEDED.\n", ha->host_no,
776 qla_printk(KERN_INFO, ha, 776 id, lun);
777 "%s: failed while waiting for commands\n",
778 __func__);
779
780 goto eh_dev_reset_done;
781 }
782 }
783
784 qla_printk(KERN_INFO, ha,
785 "scsi(%ld:%d:%d): DEVICE RESET SUCCEEDED.\n", ha->host_no, id, lun);
786 777
787eh_dev_reset_done:
788 return ret; 778 return ret;
789} 779}
790 780
@@ -886,10 +876,9 @@ qla2xxx_eh_bus_reset(struct scsi_cmnd *cmd)
886 if (ret == FAILED) 876 if (ret == FAILED)
887 goto eh_bus_reset_done; 877 goto eh_bus_reset_done;
888 878
889 /* Waiting for our command in done_queue to be returned to OS.*/ 879 /* Flush outstanding commands. */
890 if (cmd->device->host->eh_active) 880 if (!qla2x00_eh_wait_for_pending_commands(ha))
891 if (!qla2x00_eh_wait_for_pending_commands(ha)) 881 ret = FAILED;
892 ret = FAILED;
893 882
894eh_bus_reset_done: 883eh_bus_reset_done:
895 qla_printk(KERN_INFO, ha, "%s: reset %s\n", __func__, 884 qla_printk(KERN_INFO, ha, "%s: reset %s\n", __func__,