From: Sachin Prabhu <spra...@redhat.com>

commit d171356ff11ab1825e456dfb979755e01b3c54a1 upstream.

Patch a6b5058 results in -EREMOTE returned by is_path_accessible() in
cifs_mount() to be ignored which breaks DFS mounting.

Signed-off-by: Sachin Prabhu <spra...@redhat.com>
Reviewed-by: Aurelien Aptel <aap...@suse.com>
Signed-off-by: Steve French <smfre...@gmail.com>
Signed-off-by: Willy Tarreau <w...@1wt.eu>
---
 fs/cifs/connect.c | 19 ++++++++++---------
 1 file changed, 10 insertions(+), 9 deletions(-)

diff --git a/fs/cifs/connect.c b/fs/cifs/connect.c
index cbdc5b0..417ce0a 100644
--- a/fs/cifs/connect.c
+++ b/fs/cifs/connect.c
@@ -3622,15 +3622,16 @@ remote_path_check:
                        kfree(full_path);
                        goto mount_fail_check;
                }
-
-               rc = cifs_are_all_path_components_accessible(server,
-                                                            xid, tcon, cifs_sb,
-                                                            full_path);
-               if (rc != 0) {
-                       cifs_dbg(VFS, "cannot query dirs between root and final 
path, "
-                                "enabling CIFS_MOUNT_USE_PREFIX_PATH\n");
-                       cifs_sb->mnt_cifs_flags |= CIFS_MOUNT_USE_PREFIX_PATH;
-                       rc = 0;
+               if (rc != -EREMOTE) {
+                       rc = cifs_are_all_path_components_accessible(server,
+                                                                    xid, tcon, 
cifs_sb,
+                                                                    full_path);
+                       if (rc != 0) {
+                               cifs_dbg(VFS, "cannot query dirs between root 
and final path, "
+                                        "enabling 
CIFS_MOUNT_USE_PREFIX_PATH\n");
+                               cifs_sb->mnt_cifs_flags |= 
CIFS_MOUNT_USE_PREFIX_PATH;
+                               rc = 0;
+                       }
                }
                kfree(full_path);
        }
-- 
2.8.0.rc2.1.gbe9624a

Reply via email to