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>
This commit is contained in:
Pavel Shilovsky
2016-10-07 17:26:36 -07:00
zatwierdzone przez Steve French
rodzic 166cea4dc3
commit f2cca6a7c9
2 zmienionych plików z 18 dodań i 5 usunięć

Wyświetl plik

@@ -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;