summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorTrond Myklebust <Trond.Myklebust@netapp.com>2006-06-09 09:34:15 -0400
committerTrond Myklebust <Trond.Myklebust@netapp.com>2006-06-09 09:34:15 -0400
commitbb4a58bf46473e3e83d84054bbc110db3a0f85e4 (patch)
tree41ee38709c36f86d565c1a3f311b8fa9546b3c8e /include
parentda6d503aa0a75ec44f17d985a2b500077e7f6a74 (diff)
downloadlinux-3.10-bb4a58bf46473e3e83d84054bbc110db3a0f85e4.tar.gz
linux-3.10-bb4a58bf46473e3e83d84054bbc110db3a0f85e4.tar.bz2
linux-3.10-bb4a58bf46473e3e83d84054bbc110db3a0f85e4.zip
VFS: Add GPL_EXPORTED function vfs_kern_mount()
do_kern_mount() does not allow the kernel to use private mount interfaces without exposing the same interfaces to userland. The problem is that the filesystem is referenced by name, thus meaning that it and its mount interface must be registered in the global filesystem list. vfs_kern_mount() passes the struct file_system_type as an explicit parameter in order to overcome this limitation. Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/mount.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/linux/mount.h b/include/linux/mount.h
index b7472ae91fa..aff68c3660f 100644
--- a/include/linux/mount.h
+++ b/include/linux/mount.h
@@ -73,6 +73,11 @@ extern struct vfsmount *alloc_vfsmnt(const char *name);
extern struct vfsmount *do_kern_mount(const char *fstype, int flags,
const char *name, void *data);
+struct file_system_type;
+extern struct vfsmount *vfs_kern_mount(struct file_system_type *type,
+ int flags, const char *name,
+ void *data);
+
struct nameidata;
extern int do_add_mount(struct vfsmount *newmnt, struct nameidata *nd,