summaryrefslogtreecommitdiff
path: root/drivers/scsi
diff options
context:
space:
mode:
authorManish Rangankar <manish.rangankar@qlogic.com>2011-10-07 23:55:49 (GMT)
committerJames Bottomley <JBottomley@Parallels.com>2011-10-16 16:11:06 (GMT)
commitf922da79fd602dddb169f89471e3266cc692750a (patch)
tree7dfbceed3d556dc957f14b716849730d6034402f /drivers/scsi
parent5283bfb64e403d971bcb0718521a4ffe6cc24f5b (diff)
downloadlinux-f922da79fd602dddb169f89471e3266cc692750a.tar.xz
[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>
Diffstat (limited to 'drivers/scsi')
-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 205ecaf..8ed3e2f 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);