diff options
author | Ravi Anand <ravi.anand@qlogic.com> | 2006-05-17 18:08:44 -0400 |
---|---|---|
committer | James Bottomley <jejb@mulgrave.il.steeleye.com> | 2006-05-20 10:40:21 -0400 |
commit | 57680080baf3a8e289fad7f9e3c43ed58309e1eb (patch) | |
tree | 6c94db89570d765cdbbc86b453a005c70b98082d /drivers/scsi/qla2xxx | |
parent | e0ecae8da26d94dd878ff1d939c5aa4224df18a4 (diff) |
[SCSI] qla2xxx: Don't wait for loop transition to complete if LOOP_DEAD state is attained.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/scsi/qla2xxx')
-rw-r--r-- | drivers/scsi/qla2xxx/qla_os.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c index 017729c59a49..fbf3b03aba6b 100644 --- a/drivers/scsi/qla2xxx/qla_os.c +++ b/drivers/scsi/qla2xxx/qla_os.c | |||
@@ -577,6 +577,10 @@ qla2x00_wait_for_loop_ready(scsi_qla_host_t *ha) | |||
577 | while ((!atomic_read(&ha->loop_down_timer) && | 577 | while ((!atomic_read(&ha->loop_down_timer) && |
578 | atomic_read(&ha->loop_state) == LOOP_DOWN) || | 578 | atomic_read(&ha->loop_state) == LOOP_DOWN) || |
579 | atomic_read(&ha->loop_state) != LOOP_READY) { | 579 | atomic_read(&ha->loop_state) != LOOP_READY) { |
580 | if (atomic_read(&ha->loop_state) == LOOP_DEAD) { | ||
581 | return_status = QLA_FUNCTION_FAILED; | ||
582 | break; | ||
583 | } | ||
580 | msleep(1000); | 584 | msleep(1000); |
581 | if (time_after_eq(jiffies, loop_timeout)) { | 585 | if (time_after_eq(jiffies, loop_timeout)) { |
582 | return_status = QLA_FUNCTION_FAILED; | 586 | return_status = QLA_FUNCTION_FAILED; |