aboutsummaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorGermano Percossi <germano.percossi@citrix.com>2017-04-07 07:29:37 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2017-04-27 03:10:37 -0400
commitf79ef57911ee598e0bfb7af1ab51413429a8f9d5 (patch)
treed30cb71bb75a9c00cf3b57d2c1d4f9625c09aa0f /fs
parent0b7c970663411cbca20517f38544983ff4fd9650 (diff)
CIFS: remove bad_network_name flag
commit a0918f1ce6a43ac980b42b300ec443c154970979 upstream. STATUS_BAD_NETWORK_NAME can be received during node failover, causing the flag to be set and making the reconnect thread always unsuccessful, thereafter. Once the only place where it is set is removed, the remaining bits are rendered moot. Removing it does not prevent "mount" from failing when a non existent share is passed. What happens when the share really ceases to exist while the share is mounted is undefined now as much as it was before. Signed-off-by: Germano Percossi <germano.percossi@citrix.com> Reviewed-by: Pavel Shilovsky <pshilov@microsoft.com> Signed-off-by: Steve French <smfrench@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'fs')
-rw-r--r--fs/cifs/cifsglob.h1
-rw-r--r--fs/cifs/smb2pdu.c5
2 files changed, 0 insertions, 6 deletions
diff --git a/fs/cifs/cifsglob.h b/fs/cifs/cifsglob.h
index 203287f86525..94661cf77ae8 100644
--- a/fs/cifs/cifsglob.h
+++ b/fs/cifs/cifsglob.h
@@ -930,7 +930,6 @@ struct cifs_tcon {
930 bool use_persistent:1; /* use persistent instead of durable handles */ 930 bool use_persistent:1; /* use persistent instead of durable handles */
931#ifdef CONFIG_CIFS_SMB2 931#ifdef CONFIG_CIFS_SMB2
932 bool print:1; /* set if connection to printer share */ 932 bool print:1; /* set if connection to printer share */
933 bool bad_network_name:1; /* set if ret status STATUS_BAD_NETWORK_NAME */
934 __le32 capabilities; 933 __le32 capabilities;
935 __u32 share_flags; 934 __u32 share_flags;
936 __u32 maximal_access; 935 __u32 maximal_access;
diff --git a/fs/cifs/smb2pdu.c b/fs/cifs/smb2pdu.c
index 7080dac3592c..802185386851 100644
--- a/fs/cifs/smb2pdu.c
+++ b/fs/cifs/smb2pdu.c
@@ -1084,9 +1084,6 @@ SMB2_tcon(const unsigned int xid, struct cifs_ses *ses, const char *tree,
1084 else 1084 else
1085 return -EIO; 1085 return -EIO;
1086 1086
1087 if (tcon && tcon->bad_network_name)
1088 return -ENOENT;
1089
1090 if ((tcon && tcon->seal) && 1087 if ((tcon && tcon->seal) &&
1091 ((ses->server->capabilities & SMB2_GLOBAL_CAP_ENCRYPTION) == 0)) { 1088 ((ses->server->capabilities & SMB2_GLOBAL_CAP_ENCRYPTION) == 0)) {
1092 cifs_dbg(VFS, "encryption requested but no server support"); 1089 cifs_dbg(VFS, "encryption requested but no server support");
@@ -1188,8 +1185,6 @@ tcon_exit:
1188tcon_error_exit: 1185tcon_error_exit:
1189 if (rsp->hdr.Status == STATUS_BAD_NETWORK_NAME) { 1186 if (rsp->hdr.Status == STATUS_BAD_NETWORK_NAME) {
1190 cifs_dbg(VFS, "BAD_NETWORK_NAME: %s\n", tree); 1187 cifs_dbg(VFS, "BAD_NETWORK_NAME: %s\n", tree);
1191 if (tcon)
1192 tcon->bad_network_name = true;
1193 } 1188 }
1194 goto tcon_exit; 1189 goto tcon_exit;
1195} 1190}