Merge tag 'v5.3-rc1' into patchwork
[linux-2.6-microblaze.git] / fs / nsfs.c
index e3bf08c..a043164 100644 (file)
--- a/fs/nsfs.c
+++ b/fs/nsfs.c
@@ -1,5 +1,6 @@
 // SPDX-License-Identifier: GPL-2.0
 #include <linux/mount.h>
+#include <linux/pseudo_fs.h>
 #include <linux/file.h>
 #include <linux/fs.h>
 #include <linux/proc_ns.h>
@@ -258,15 +259,20 @@ static const struct super_operations nsfs_ops = {
        .evict_inode = nsfs_evict,
        .show_path = nsfs_show_path,
 };
-static struct dentry *nsfs_mount(struct file_system_type *fs_type,
-                       int flags, const char *dev_name, void *data)
+
+static int nsfs_init_fs_context(struct fs_context *fc)
 {
-       return mount_pseudo(fs_type, "nsfs:", &nsfs_ops,
-                       &ns_dentry_operations, NSFS_MAGIC);
+       struct pseudo_fs_context *ctx = init_pseudo(fc, NSFS_MAGIC);
+       if (!ctx)
+               return -ENOMEM;
+       ctx->ops = &nsfs_ops;
+       ctx->dops = &ns_dentry_operations;
+       return 0;
 }
+
 static struct file_system_type nsfs = {
        .name = "nsfs",
-       .mount = nsfs_mount,
+       .init_fs_context = nsfs_init_fs_context,
        .kill_sb = kill_anon_super,
 };