aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoland Dreier <roland@purestorage.com>2012-05-09 10:51:01 -0700
committerNicholas Bellinger <nab@linux-iscsi.org>2012-05-09 12:34:03 -0700
commit8df330a5eb6d5000263556687081d302e135f641 (patch)
tree35aa19ef34b182e79ff729b5c04d8725415a9ae4
parent3269d930536f4dd9a431cfaca877c1c2cccb0fe6 (diff)
downloadlio-core-8df330a5eb6d5000263556687081d302e135f641.tar.gz
qla2xxx: Add missing call to qlt_fc_port_deleted()
qla2x00_schedule_rport_del() calls fc_remote_port_delete(), which starts a timer to tear down an rport structure. We need a call to qlt_fc_port_deleted() here. Otherwise, if the FC transport timer expires and tears down the rport, the initiator will be logged out and the target code's notion of what sessions it has will get out of sync with the rest of the driver and the firmware. Signed-off-by: Roland Dreier <roland@purestorage.com> Cc: Arun Easi <arun.easi@qlogic.com> Cc: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
-rw-r--r--drivers/scsi/qla2xxx/qla_os.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c
index 11d41c722f7369..a43ebce54ee86e 100644
--- a/drivers/scsi/qla2xxx/qla_os.c
+++ b/drivers/scsi/qla2xxx/qla_os.c
@@ -2879,8 +2879,10 @@ qla2x00_schedule_rport_del(struct scsi_qla_host *vha, fc_port_t *fcport,
spin_unlock_irqrestore(vha->host->host_lock, flags);
set_bit(FCPORT_UPDATE_NEEDED, &base_vha->dpc_flags);
qla2xxx_wake_dpc(base_vha);
- } else
+ } else {
fc_remote_port_delete(rport);
+ qlt_fc_port_deleted(vha, fcport);
+ }
}
/*