diff options
author | Andrew Vasquez <andrew.vasquez@qlogic.com> | 2009-03-24 12:08:02 -0400 |
---|---|---|
committer | James Bottomley <James.Bottomley@HansenPartnership.com> | 2009-04-03 10:22:46 -0400 |
commit | be67e6530b006b10380a5f0c49cdf974426a22e9 (patch) | |
tree | 60e95e3b9089ed949394c0bb15a734428ab2c1d5 /drivers/scsi | |
parent | b64b0e8fd964ce637794d4aaa772db1ae4298ea9 (diff) |
[SCSI] qla2xxx: Preserve an fcport's loop-id after terminate_rport_io().
Since in some circumstances, login-retries may be occuring in the
background via the DPC routine. This race, in the inadvertant
setting of the loop-id to 'NONE' breaks the existing retry logic.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'drivers/scsi')
-rw-r--r-- | drivers/scsi/qla2xxx/qla_attr.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/drivers/scsi/qla2xxx/qla_attr.c b/drivers/scsi/qla2xxx/qla_attr.c index ee9d40152430..664d610d333f 100644 --- a/drivers/scsi/qla2xxx/qla_attr.c +++ b/drivers/scsi/qla2xxx/qla_attr.c | |||
@@ -1036,12 +1036,10 @@ qla2x00_terminate_rport_io(struct fc_rport *rport) | |||
1036 | * At this point all fcport's software-states are cleared. Perform any | 1036 | * At this point all fcport's software-states are cleared. Perform any |
1037 | * final cleanup of firmware resources (PCBs and XCBs). | 1037 | * final cleanup of firmware resources (PCBs and XCBs). |
1038 | */ | 1038 | */ |
1039 | if (fcport->loop_id != FC_NO_LOOP_ID) { | 1039 | if (fcport->loop_id != FC_NO_LOOP_ID) |
1040 | fcport->vha->hw->isp_ops->fabric_logout(fcport->vha, | 1040 | fcport->vha->hw->isp_ops->fabric_logout(fcport->vha, |
1041 | fcport->loop_id, fcport->d_id.b.domain, | 1041 | fcport->loop_id, fcport->d_id.b.domain, |
1042 | fcport->d_id.b.area, fcport->d_id.b.al_pa); | 1042 | fcport->d_id.b.area, fcport->d_id.b.al_pa); |
1043 | fcport->loop_id = FC_NO_LOOP_ID; | ||
1044 | } | ||
1045 | 1043 | ||
1046 | qla2x00_abort_fcport_cmds(fcport); | 1044 | qla2x00_abort_fcport_cmds(fcport); |
1047 | } | 1045 | } |