Skip to content

Commit

Permalink
vfs: Convert aio to use the new mount API
Browse files Browse the repository at this point in the history
Convert the aio 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: David Howells <[email protected]>
cc: Benjamin LaHaise <[email protected]>
cc: [email protected]
Signed-off-by: Al Viro <[email protected]>
  • Loading branch information
dhowells authored and Al Viro committed May 25, 2019
1 parent 31d6d5c commit 52db59d
Showing 1 changed file with 7 additions and 8 deletions.
15 changes: 7 additions & 8 deletions fs/aio.c
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@
#include <linux/ramfs.h>
#include <linux/percpu-refcount.h>
#include <linux/mount.h>
#include <linux/pseudo_fs.h>

#include <asm/kmap_types.h>
#include <linux/uaccess.h>
Expand Down Expand Up @@ -249,14 +250,12 @@ static struct file *aio_private_file(struct kioctx *ctx, loff_t nr_pages)
return file;
}

static struct dentry *aio_mount(struct file_system_type *fs_type,
int flags, const char *dev_name, void *data)
static int aio_init_fs_context(struct fs_context *fc)
{
struct dentry *root = mount_pseudo(fs_type, NULL, NULL, AIO_RING_MAGIC);

if (!IS_ERR(root))
root->d_sb->s_iflags |= SB_I_NOEXEC;
return root;
if (!init_pseudo(fc, AIO_RING_MAGIC))
return -ENOMEM;
fc->s_iflags |= SB_I_NOEXEC;
return 0;
}

/* aio_setup
Expand All @@ -267,7 +266,7 @@ static int __init aio_setup(void)
{
static struct file_system_type aio_fs = {
.name = "aio",
.mount = aio_mount,
.init_fs_context = aio_init_fs_context,
.kill_sb = kill_anon_super,
};
aio_mnt = kern_mount(&aio_fs);
Expand Down

0 comments on commit 52db59d

Please sign in to comment.