Commit 9030d16e authored by David Howells's avatar David Howells Committed by Al Viro

vfs: Convert bdev to use the new mount API

Convert the bdev filesystem to the new internal mount API as the old
one will be obsoleted and removed.  This allows greater flexibility in
communication of mount parameters between userspace, the VFS and the
filesystem.

See Documentation/filesystems/mount_api.txt for more information.
Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
cc: Jens Axboe <axboe@kernel.dk>
cc: linux-fsdevel@vger.kernel.org
Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent 33cada40
...@@ -25,6 +25,7 @@ ...@@ -25,6 +25,7 @@
#include <linux/writeback.h> #include <linux/writeback.h>
#include <linux/mpage.h> #include <linux/mpage.h>
#include <linux/mount.h> #include <linux/mount.h>
#include <linux/pseudo_fs.h>
#include <linux/uio.h> #include <linux/uio.h>
#include <linux/namei.h> #include <linux/namei.h>
#include <linux/log2.h> #include <linux/log2.h>
...@@ -833,19 +834,19 @@ static const struct super_operations bdev_sops = { ...@@ -833,19 +834,19 @@ static const struct super_operations bdev_sops = {
.evict_inode = bdev_evict_inode, .evict_inode = bdev_evict_inode,
}; };
static struct dentry *bd_mount(struct file_system_type *fs_type, static int bd_init_fs_context(struct fs_context *fc)
int flags, const char *dev_name, void *data)
{ {
struct dentry *dent; struct pseudo_fs_context *ctx = init_pseudo(fc, BDEVFS_MAGIC);
dent = mount_pseudo(fs_type, &bdev_sops, NULL, BDEVFS_MAGIC); if (!ctx)
if (!IS_ERR(dent)) return -ENOMEM;
dent->d_sb->s_iflags |= SB_I_CGROUPWB; fc->s_iflags |= SB_I_CGROUPWB;
return dent; ctx->ops = &bdev_sops;
return 0;
} }
static struct file_system_type bd_type = { static struct file_system_type bd_type = {
.name = "bdev", .name = "bdev",
.mount = bd_mount, .init_fs_context = bd_init_fs_context,
.kill_sb = kill_anon_super, .kill_sb = kill_anon_super,
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment