summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorManish Rangankar <manish.rangankar@qlogic.com>2011-10-08 01:55:49 +0200
committerJames Bottomley <JBottomley@Parallels.com>2011-10-16 18:11:06 +0200
commitf922da79fd602dddb169f89471e3266cc692750a (patch)
tree7dfbceed3d556dc957f14b716849730d6034402f
parent[SCSI] qla4xxx: Fixed device blocked issue on link up-down. (diff)
downloadlinux-f922da79fd602dddb169f89471e3266cc692750a.tar.xz
linux-f922da79fd602dddb169f89471e3266cc692750a.zip
[SCSI] qla4xxx: Fixed active session re-open issue.
When iscsid restarted for an existing active session, set DDB will fail with status already logged in. In this case, we have to send logged in event to iscsid. JIRA Key: OPENISCSI-21 Signed-off-by: Manish Rangankar <manish.rangankar@qlogic.com> Signed-off-by: Vikas Chaudhary <vikas.chaudhary@qlogic.com> Reviewed-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
-rw-r--r--drivers/scsi/qla4xxx/ql4_os.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/scsi/qla4xxx/ql4_os.c b/drivers/scsi/qla4xxx/ql4_os.c
index 205ecaf5438b..8ed3e2fc1584 100644
--- a/drivers/scsi/qla4xxx/ql4_os.c
+++ b/drivers/scsi/qla4xxx/ql4_os.c
@@ -1142,8 +1142,12 @@ static int qla4xxx_conn_start(struct iscsi_cls_conn *cls_conn)
*/
if (mbx_sts)
if (ddb_entry->fw_ddb_device_state ==
- DDB_DS_SESSION_ACTIVE)
+ DDB_DS_SESSION_ACTIVE) {
+ iscsi_conn_start(ddb_entry->conn);
+ iscsi_conn_login_event(ddb_entry->conn,
+ ISCSI_CONN_STATE_LOGGED_IN);
goto exit_set_param;
+ }
ql4_printk(KERN_ERR, ha, "%s: Failed set param for index[%d]\n",
__func__, ddb_entry->fw_ddb_index);