]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
Move check for prefix path to within cifs_get_root()
authorSachin Prabhu <sprabhu@redhat.com>
Fri, 29 Jul 2016 21:38:21 +0000 (22:38 +0100)
committerBen Hutchings <ben@decadent.org.uk>
Thu, 12 Oct 2017 14:28:21 +0000 (15:28 +0100)
commit 348c1bfa84dfc47da1f1234b7f2bf09fa798edea upstream.

Signed-off-by: Sachin Prabhu <sprabhu@redhat.com>
Tested-by: Aurelien Aptel <aaptel@suse.com>
Signed-off-by: Steve French <smfrench@gmail.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
fs/cifs/cifsfs.c

index c9ee8bbde94261625c96f754fe19c841e06b8c11..281358942b64969e951571ba4a6fdadcad120379 100644 (file)
@@ -584,6 +584,9 @@ cifs_get_root(struct smb_vol *vol, struct super_block *sb)
        char *s, *p;
        char sep;
 
+       if (cifs_sb->mnt_cifs_flags & CIFS_MOUNT_USE_PREFIX_PATH)
+               return dget(sb->s_root);
+
        full_path = cifs_build_path_to_root(vol, cifs_sb,
                                            cifs_sb_master_tcon(cifs_sb));
        if (full_path == NULL)
@@ -708,11 +711,7 @@ cifs_do_mount(struct file_system_type *fs_type,
                sb->s_flags |= MS_ACTIVE;
        }
 
-       if (cifs_sb->mnt_cifs_flags & CIFS_MOUNT_USE_PREFIX_PATH)
-               root = dget(sb->s_root);
-       else
-               root = cifs_get_root(volume_info, sb);
-
+       root = cifs_get_root(volume_info, sb);
        if (IS_ERR(root))
                goto out_super;