]> git.neil.brown.name Git - history.git/commitdiff
[PATCH] (8/9) more ->get_sb() stuff
authorAlexander Viro <viro@math.psu.edu>
Wed, 6 Feb 2002 14:34:53 +0000 (06:34 -0800)
committerLinus Torvalds <torvalds@athlon.transmeta.com>
Wed, 6 Feb 2002 14:34:53 +0000 (06:34 -0800)
More ->get_sb() patches: autofs4

fs/autofs4/autofs_i.h
fs/autofs4/init.c
fs/autofs4/inode.c

index 4dcdcaafcca99b772344d5f248d1891aa9e85678..7e43620bca87fbc43f16454de5ec382e0a4120c5 100644 (file)
@@ -144,7 +144,7 @@ extern struct file_operations autofs4_root_operations;
 
 /* Initializing function */
 
-struct super_block *autofs4_read_super(struct super_block *, void *,int);
+int autofs4_fill_super(struct super_block *, void *, int);
 struct autofs_info *autofs4_init_ino(struct autofs_info *, struct autofs_sb_info *sbi, mode_t mode);
 
 /* Queue management functions */
index dbb3e5385ded0a19916ebb63b822d2d0ca1cf2d2..fdce6b04367c4adbcc7b1ad91bc13cca3700ea3d 100644 (file)
 #include <linux/init.h>
 #include "autofs_i.h"
 
-static DECLARE_FSTYPE(autofs_fs_type, "autofs", autofs4_read_super, 0);
+static struct super_block *autofs_get_sb(struct file_system_type *fs_type,
+       int flags, char *dev_name, void *data)
+{
+       return get_sb_nodev(fs_type, flags, data, autofs4_fill_super);
+}
+
+static struct file_system_type autofs_fs_type = {
+       owner:          THIS_MODULE,
+       name:           "autofs",
+       get_sb:         autofs_get_sb,
+};
 
 static int __init init_autofs4_fs(void)
 {
index 1f2d29f6d0cdcc141efe7ede83ced0c26d1085dc..a7331fd67fa97ba89f08d7337ca4ecf8b6deeacd 100644 (file)
@@ -173,8 +173,7 @@ static struct autofs_info *autofs4_mkroot(struct autofs_sb_info *sbi)
        return ino;
 }
 
-struct super_block *autofs4_read_super(struct super_block *s, void *data,
-                                     int silent)
+int autofs4_fill_super(struct super_block *s, void *data, int silent)
 {
        struct inode * root_inode;
        struct dentry * root;
@@ -251,7 +250,7 @@ struct super_block *autofs4_read_super(struct super_block *s, void *data,
         * Success! Install the root dentry now to indicate completion.
         */
        s->s_root = root;
-       return s;
+       return 0;
        
        /*
         * Failure ... clean up.
@@ -278,7 +277,7 @@ fail_iput:
 fail_free:
        kfree(sbi);
 fail_unlock:
-       return NULL;
+       return -EINVAL;
 }
 
 static int autofs4_statfs(struct super_block *sb, struct statfs *buf)