aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--fs/namespace.c3
-rw-r--r--fs/nfs/super.c8
-rw-r--r--include/linux/mnt_namespace.h1
3 files changed, 1 insertions, 11 deletions
diff --git a/fs/namespace.c b/fs/namespace.c
index 7d70d63ceb29..faab1273281e 100644
--- a/fs/namespace.c
+++ b/fs/namespace.c
@@ -2068,7 +2068,7 @@ struct mnt_namespace *copy_mnt_ns(unsigned long flags, struct mnt_namespace *ns,
2068 * create_mnt_ns - creates a private namespace and adds a root filesystem 2068 * create_mnt_ns - creates a private namespace and adds a root filesystem
2069 * @mnt: pointer to the new root filesystem mountpoint 2069 * @mnt: pointer to the new root filesystem mountpoint
2070 */ 2070 */
2071struct mnt_namespace *create_mnt_ns(struct vfsmount *mnt) 2071static struct mnt_namespace *create_mnt_ns(struct vfsmount *mnt)
2072{ 2072{
2073 struct mnt_namespace *new_ns; 2073 struct mnt_namespace *new_ns;
2074 2074
@@ -2080,7 +2080,6 @@ struct mnt_namespace *create_mnt_ns(struct vfsmount *mnt)
2080 } 2080 }
2081 return new_ns; 2081 return new_ns;
2082} 2082}
2083EXPORT_SYMBOL(create_mnt_ns);
2084 2083
2085SYSCALL_DEFINE5(mount, char __user *, dev_name, char __user *, dir_name, 2084SYSCALL_DEFINE5(mount, char __user *, dev_name, char __user *, dir_name,
2086 char __user *, type, unsigned long, flags, void __user *, data) 2085 char __user *, type, unsigned long, flags, void __user *, data)
diff --git a/fs/nfs/super.c b/fs/nfs/super.c
index ce907efc5508..d5b112bcf3de 100644
--- a/fs/nfs/super.c
+++ b/fs/nfs/super.c
@@ -2648,21 +2648,13 @@ out_freepage:
2648static int nfs_follow_remote_path(struct vfsmount *root_mnt, 2648static int nfs_follow_remote_path(struct vfsmount *root_mnt,
2649 const char *export_path, struct vfsmount *mnt_target) 2649 const char *export_path, struct vfsmount *mnt_target)
2650{ 2650{
2651 struct mnt_namespace *ns_private;
2652 struct nameidata nd; 2651 struct nameidata nd;
2653 struct super_block *s; 2652 struct super_block *s;
2654 int ret; 2653 int ret;
2655 2654
2656 ns_private = create_mnt_ns(root_mnt);
2657 ret = PTR_ERR(ns_private);
2658 if (IS_ERR(ns_private))
2659 goto out_mntput;
2660
2661 ret = vfs_path_lookup(root_mnt->mnt_root, root_mnt, 2655 ret = vfs_path_lookup(root_mnt->mnt_root, root_mnt,
2662 export_path, LOOKUP_FOLLOW, &nd); 2656 export_path, LOOKUP_FOLLOW, &nd);
2663 2657
2664 put_mnt_ns(ns_private);
2665
2666 if (ret != 0) 2658 if (ret != 0)
2667 goto out_err; 2659 goto out_err;
2668 2660
diff --git a/include/linux/mnt_namespace.h b/include/linux/mnt_namespace.h
index d74785c2393a..d9ebf1037dfa 100644
--- a/include/linux/mnt_namespace.h
+++ b/include/linux/mnt_namespace.h
@@ -23,7 +23,6 @@ struct proc_mounts {
23 23
24struct fs_struct; 24struct fs_struct;
25 25
26extern struct mnt_namespace *create_mnt_ns(struct vfsmount *mnt);
27extern struct mnt_namespace *copy_mnt_ns(unsigned long, struct mnt_namespace *, 26extern struct mnt_namespace *copy_mnt_ns(unsigned long, struct mnt_namespace *,
28 struct fs_struct *); 27 struct fs_struct *);
29extern void put_mnt_ns(struct mnt_namespace *ns); 28extern void put_mnt_ns(struct mnt_namespace *ns);