Signed-off-by: David Howells <dhowells@xxxxxxxxxx> cc: Dan Williams <dan.j.williams@xxxxxxxxx> cc: Vishal Verma <vishal.l.verma@xxxxxxxxx> cc: Keith Busch <keith.busch@xxxxxxxxx> cc: Dave Jiang <dave.jiang@xxxxxxxxx> cc: linux-nvdimm@xxxxxxxxxxxx --- drivers/dax/super.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/drivers/dax/super.c b/drivers/dax/super.c index 0cb8c30ea278..40a9e665be32 100644 --- a/drivers/dax/super.c +++ b/drivers/dax/super.c @@ -13,6 +13,7 @@ #include <linux/pagemap.h> #include <linux/module.h> #include <linux/mount.h> +#include <linux/fs_context.h> #include <linux/magic.h> #include <linux/genhd.h> #include <linux/pfn_t.h> @@ -435,16 +436,16 @@ static const struct super_operations dax_sops = { .drop_inode = generic_delete_inode, }; -static struct dentry *dax_mount(struct file_system_type *fs_type, - int flags, const char *dev_name, void *data) +static int dax_init_fs_context(struct fs_context *fc) { - return mount_pseudo(fs_type, "dax:", &dax_sops, NULL, DAXFS_MAGIC); + return vfs_init_pseudo_fs_context(fc, "dax:", + &dax_sops, NULL, NULL, DAXFS_MAGIC); } static struct file_system_type dax_fs_type = { - .name = "dax", - .mount = dax_mount, - .kill_sb = kill_anon_super, + .name = "dax", + .init_fs_context = dax_init_fs_context, + .kill_sb = kill_anon_super, }; static int dax_test(struct inode *inode, void *data)