[CIFS] fix check for dead tcon in smb_init
This was recently changed to check for need_reconnect, but should actually be a check for a tidStatus of CifsExiting. Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Steve French <sfrench@us.ibm.com>
This commit is contained in:
parent
4e14e833ac
commit
bfb59820ee
2 changed files with 6 additions and 2 deletions
|
@ -8,7 +8,11 @@ handling fcntl(F_SETLEASE). Convert cifs to using blocking tcp
|
|||
sends, and also let tcp autotune the socket send and receive buffers.
|
||||
This reduces the number of EAGAIN errors returned by TCP/IP in
|
||||
high stress workloads (and the number of retries on socket writes
|
||||
when sending large SMBWriteX requests).
|
||||
when sending large SMBWriteX requests). Fix case in which a portion of
|
||||
data can in some cases not get written to the file on the server before the
|
||||
file is closed. Fix DFS parsing to properly handle path consumed field,
|
||||
and to handle certain codepage conversions better. Fix mount and
|
||||
umount race that can cause oops in mount or umount or reconnect.
|
||||
|
||||
Version 1.54
|
||||
------------
|
||||
|
|
|
@ -295,7 +295,7 @@ smb_init(int smb_command, int wct, struct cifsTconInfo *tcon,
|
|||
check for tcp and smb session status done differently
|
||||
for those three - in the calling routine */
|
||||
if (tcon) {
|
||||
if (tcon->need_reconnect) {
|
||||
if (tcon->tidStatus == CifsExiting) {
|
||||
/* only tree disconnect, open, and write,
|
||||
(and ulogoff which does not have tcon)
|
||||
are allowed as we start force umount */
|
||||
|
|
Loading…
Reference in a new issue