Merge master.kernel.org:/home/rmk/linux-2.6-arm
[linux-2.6] / fs / autofs4 / init.c
1 /* -*- c -*- --------------------------------------------------------------- *
2  *
3  * linux/fs/autofs/init.c
4  *
5  *  Copyright 1997-1998 Transmeta Corporation -- All Rights Reserved
6  *
7  * This file is part of the Linux kernel and is made available under
8  * the terms of the GNU General Public License, version 2, or at your
9  * option, any later version, incorporated herein by reference.
10  *
11  * ------------------------------------------------------------------------- */
12
13 #include <linux/module.h>
14 #include <linux/init.h>
15 #include "autofs_i.h"
16
17 static int autofs_get_sb(struct file_system_type *fs_type,
18         int flags, const char *dev_name, void *data, struct vfsmount *mnt)
19 {
20         return get_sb_nodev(fs_type, flags, data, autofs4_fill_super, mnt);
21 }
22
23 static struct file_system_type autofs_fs_type = {
24         .owner          = THIS_MODULE,
25         .name           = "autofs",
26         .get_sb         = autofs_get_sb,
27         .kill_sb        = autofs4_kill_sb,
28 };
29
30 static int __init init_autofs4_fs(void)
31 {
32         int err;
33
34         err = register_filesystem(&autofs_fs_type);
35         if (err)
36                 return err;
37
38         autofs_dev_ioctl_init();
39
40         return err;
41 }
42
43 static void __exit exit_autofs4_fs(void)
44 {
45         autofs_dev_ioctl_exit();
46         unregister_filesystem(&autofs_fs_type);
47 }
48
49 module_init(init_autofs4_fs) 
50 module_exit(exit_autofs4_fs)
51 MODULE_LICENSE("GPL");