diff options
author | Giridhar Malavali <giridhar.malavali@qlogic.com> | 2010-10-15 14:27:49 -0400 |
---|---|---|
committer | James Bottomley <James.Bottomley@suse.de> | 2010-10-25 17:04:12 -0400 |
commit | 38170fa8e66bb75fe806bdc91657732aef0eae90 (patch) | |
tree | 1130ec0eede771d40b82ffa58cd1216faae0ffaa /drivers/scsi/qla2xxx/qla_attr.c | |
parent | 9dac0d9a93095ff5a27b975af30c25186bdcfeab (diff) |
[SCSI] qla2xxx: Avoid depending on SCSI host_lock in queuecommand function.
Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com>
Signed-off-by: Madhuranath Iyengar <Madhu.Iyengar@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_attr.c')
-rw-r--r-- | drivers/scsi/qla2xxx/qla_attr.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/scsi/qla2xxx/qla_attr.c b/drivers/scsi/qla2xxx/qla_attr.c index a9ceb39751a1..bc8194f74625 100644 --- a/drivers/scsi/qla2xxx/qla_attr.c +++ b/drivers/scsi/qla2xxx/qla_attr.c | |||
@@ -1538,6 +1538,10 @@ qla2x00_dev_loss_tmo_callbk(struct fc_rport *rport) | |||
1538 | if (!fcport) | 1538 | if (!fcport) |
1539 | return; | 1539 | return; |
1540 | 1540 | ||
1541 | /* Now that the rport has been deleted, set the fcport state to | ||
1542 | FCS_DEVICE_DEAD */ | ||
1543 | atomic_set(&fcport->state, FCS_DEVICE_DEAD); | ||
1544 | |||
1541 | /* | 1545 | /* |
1542 | * Transport has effectively 'deleted' the rport, clear | 1546 | * Transport has effectively 'deleted' the rport, clear |
1543 | * all local references. | 1547 | * all local references. |
@@ -1547,10 +1551,6 @@ qla2x00_dev_loss_tmo_callbk(struct fc_rport *rport) | |||
1547 | *((fc_port_t **)rport->dd_data) = NULL; | 1551 | *((fc_port_t **)rport->dd_data) = NULL; |
1548 | spin_unlock_irq(host->host_lock); | 1552 | spin_unlock_irq(host->host_lock); |
1549 | 1553 | ||
1550 | /* Now that the rport has been deleted, set the fcport state to | ||
1551 | FCS_DEVICE_DEAD */ | ||
1552 | atomic_set(&fcport->state, FCS_DEVICE_DEAD); | ||
1553 | |||
1554 | if (test_bit(ABORT_ISP_ACTIVE, &fcport->vha->dpc_flags)) | 1554 | if (test_bit(ABORT_ISP_ACTIVE, &fcport->vha->dpc_flags)) |
1555 | return; | 1555 | return; |
1556 | 1556 | ||