]> git.karo-electronics.de Git - linux-beck.git/commitdiff
[SCSI] qla4xxx: Fixed active session re-open issue.
authorManish Rangankar <manish.rangankar@qlogic.com>
Fri, 7 Oct 2011 23:55:49 +0000 (16:55 -0700)
committerJames Bottomley <JBottomley@Parallels.com>
Sun, 16 Oct 2011 16:11:06 +0000 (11:11 -0500)
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>
drivers/scsi/qla4xxx/ql4_os.c

index 205ecaf5438bebb7aa6708ef76d53a1d3873b898..8ed3e2fc15847888efc458883b973708059b3302 100644 (file)
@@ -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);