Fix reconnect to not defer smb3 session reconnect long after socket reconnect
authorSteve French <smfrench@gmail.com>
Thu, 23 Jun 2016 01:12:05 +0000 (20:12 -0500)
committerSteve French <smfrench@gmail.com>
Fri, 24 Jun 2016 17:04:50 +0000 (12:04 -0500)
commit4fcd1813e6404dd4420c7d12fb483f9320f0bf93
tree48091c807886c6c61228bc32c600d4577849a2b5
parenta6b6befbb2806697461962edb044e3376a771ebb
Fix reconnect to not defer smb3 session reconnect long after socket reconnect

Azure server blocks clients that open a socket and don't do anything on it.
In our reconnect scenarios, we can reconnect the tcp session and
detect the socket is available but we defer the negprot and SMB3 session
setup and tree connect reconnection until the next i/o is requested, but
this looks suspicous to some servers who expect SMB3 negprog and session
setup soon after a socket is created.

In the echo thread, reconnect SMB3 sessions and tree connections
that are disconnected.  A later patch will replay persistent (and
resilient) handle opens.

CC: Stable <stable@vger.kernel.org>
Signed-off-by: Steve French <steve.french@primarydata.com>
Acked-by: Pavel Shilovsky <pshilovsky@samba.org>
fs/cifs/connect.c
fs/cifs/smb2pdu.c