summaryrefslogtreecommitdiffstats
path: root/fs/cifs/cifsglob.h
diff options
context:
space:
mode:
authorPavel Shilovsky <pshilov@microsoft.com>2016-10-07 17:26:36 -0700
committerSteve French <smfrench@gmail.com>2016-10-13 19:48:55 -0500
commitf2cca6a7c99fdeadacd0bdc37d825c4bc2b03653 (patch)
tree56eb1f191ef0846f13f392bf2d207f0ba0460934 /fs/cifs/cifsglob.h
parent166cea4dc3a4f66f020cfb9286225ecd228ab61d (diff)
downloadtalos-op-linux-f2cca6a7c99fdeadacd0bdc37d825c4bc2b03653.tar.gz
talos-op-linux-f2cca6a7c99fdeadacd0bdc37d825c4bc2b03653.zip
CIFS: Fix persistent handles re-opening on reconnect
openFileList of tcon can be changed while cifs_reopen_file() is called that can lead to an unexpected behavior when we return to the loop. Fix this by introducing a temp list for keeping all file handles that need to be reopen. Signed-off-by: Pavel Shilovsky <pshilov@microsoft.com> Signed-off-by: Steve French <smfrench@gmail.com>
Diffstat (limited to 'fs/cifs/cifsglob.h')
-rw-r--r--fs/cifs/cifsglob.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/cifs/cifsglob.h b/fs/cifs/cifsglob.h
index d9a17288baf3..0c828d3c48c3 100644
--- a/fs/cifs/cifsglob.h
+++ b/fs/cifs/cifsglob.h
@@ -1065,6 +1065,7 @@ struct cifsFileInfo {
kuid_t uid; /* allows finding which FileInfo structure */
__u32 pid; /* process id who opened file */
struct cifs_fid fid; /* file id from remote */
+ struct list_head rlist; /* reconnect list */
/* BB add lock scope info here if needed */ ;
/* lock scope id (0 if none) */
struct dentry *dentry;
OpenPOWER on IntegriCloud