diff options
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_attr.c')
-rw-r--r-- | drivers/scsi/qla2xxx/qla_attr.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/drivers/scsi/qla2xxx/qla_attr.c b/drivers/scsi/qla2xxx/qla_attr.c index 5433f95f3edd..e21db2f78224 100644 --- a/drivers/scsi/qla2xxx/qla_attr.c +++ b/drivers/scsi/qla2xxx/qla_attr.c | |||
@@ -1647,10 +1647,14 @@ qla2x00_terminate_rport_io(struct fc_rport *rport) | |||
1647 | * final cleanup of firmware resources (PCBs and XCBs). | 1647 | * final cleanup of firmware resources (PCBs and XCBs). |
1648 | */ | 1648 | */ |
1649 | if (fcport->loop_id != FC_NO_LOOP_ID && | 1649 | if (fcport->loop_id != FC_NO_LOOP_ID && |
1650 | !test_bit(UNLOADING, &fcport->vha->dpc_flags)) | 1650 | !test_bit(UNLOADING, &fcport->vha->dpc_flags)) { |
1651 | fcport->vha->hw->isp_ops->fabric_logout(fcport->vha, | 1651 | if (IS_FWI2_CAPABLE(fcport->vha->hw)) |
1652 | fcport->loop_id, fcport->d_id.b.domain, | 1652 | fcport->vha->hw->isp_ops->fabric_logout(fcport->vha, |
1653 | fcport->d_id.b.area, fcport->d_id.b.al_pa); | 1653 | fcport->loop_id, fcport->d_id.b.domain, |
1654 | fcport->d_id.b.area, fcport->d_id.b.al_pa); | ||
1655 | else | ||
1656 | qla2x00_port_logout(fcport->vha, fcport); | ||
1657 | } | ||
1654 | } | 1658 | } |
1655 | 1659 | ||
1656 | static int | 1660 | static int |