Signed-off-by: David Howells <[email protected]>
cc: Minchan Kim <[email protected]>
cc: Nitin Gupta <[email protected]>
cc: Sergey Senozhatsky <[email protected]>
cc: [email protected]
---

 mm/zsmalloc.c |   19 +++++++++++--------
 1 file changed, 11 insertions(+), 8 deletions(-)

diff --git a/mm/zsmalloc.c b/mm/zsmalloc.c
index 0787d33b80d8..02bfc7f70fab 100644
--- a/mm/zsmalloc.c
+++ b/mm/zsmalloc.c
@@ -52,6 +52,7 @@
 #include <linux/zsmalloc.h>
 #include <linux/zpool.h>
 #include <linux/mount.h>
+#include <linux/fs_context.h>
 #include <linux/migrate.h>
 #include <linux/pagemap.h>
 #include <linux/fs.h>
@@ -1814,19 +1815,21 @@ static void lock_zspage(struct zspage *zspage)
        } while ((page = get_next_page(page)) != NULL);
 }
 
-static struct dentry *zs_mount(struct file_system_type *fs_type,
-                               int flags, const char *dev_name, void *data)
-{
-       static const struct dentry_operations ops = {
-               .d_dname = simple_dname,
-       };
+static const struct dentry_operations zs_dentry_operations = {
+       .d_dname = simple_dname,
+};
 
-       return mount_pseudo(fs_type, "zsmalloc:", NULL, &ops, ZSMALLOC_MAGIC);
+
+static int zs_init_fs_context(struct fs_context *fc)
+{
+       return vfs_init_pseudo_fs_context(fc, "zsmalloc:",
+                                         NULL, NULL,
+                                         &zs_dentry_operations, 
ZSMALLOC_MAGIC);
 }
 
 static struct file_system_type zsmalloc_fs = {
        .name           = "zsmalloc",
-       .mount          = zs_mount,
+       .init_fs_context = zs_init_fs_context,
        .kill_sb        = kill_anon_super,
 };
 

Reply via email to