isert: fix fops ioctl using invalid conn

On teardown flow we need to set dev conn state to disconnected.

Signed-off-by: Israel Rukshin <israelr@mellanox.com>

git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6939 d57e44dd-8a1f-0410-8b47-8ef2f437770f
This commit is contained in:
Israel Rukshin
2016-08-17 07:27:24 +00:00
parent a67322d288
commit e3f77ba979
2 changed files with 12 additions and 0 deletions

View File

@@ -78,6 +78,11 @@ static void isert_mark_conn_closed(struct iscsi_conn *conn, int flags)
static void isert_close_conn(struct iscsi_conn *conn, int flags)
{
struct isert_conn_dev *dev;
dev = isert_get_priv(conn);
if (dev)
dev->state = CS_DISCONNECTED;
}
static int isert_receive_cmnd_data(struct iscsi_cmnd *cmnd)

View File

@@ -211,6 +211,13 @@ int isert_conn_alloc(struct iscsi_session *session,
dev = filp->private_data;
if (unlikely(dev->state == CS_DISCONNECTED)) {
res = -EBADF;
goto out;
}
sBUG_ON(dev->state != CS_RSP_FINISHED);
cmnd = dev->login_rsp;
sBUG_ON(cmnd == NULL);