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
17static struct dentry *autofs_mount(struct file_system_type *fs_type,
18	int flags, const char *dev_name, void *data)
19{
20	return mount_nodev(fs_type, flags, data, autofs4_fill_super);
21}
22
23static struct file_system_type autofs_fs_type = {
24	.owner		= THIS_MODULE,
25	.name		= "autofs",
26	.mount		= autofs_mount,
27	.kill_sb	= autofs4_kill_sb,
28};
29MODULE_ALIAS_FS("autofs");
30
31static int __init init_autofs4_fs(void)
32{
33	int err;
34
35	autofs_dev_ioctl_init();
36
37	err = register_filesystem(&autofs_fs_type);
38	if (err)
39		autofs_dev_ioctl_exit();
40
41	return err;
42}
43
44static void __exit exit_autofs4_fs(void)
45{
46	autofs_dev_ioctl_exit();
47	unregister_filesystem(&autofs_fs_type);
48}
49
50module_init(init_autofs4_fs)
51module_exit(exit_autofs4_fs)
52MODULE_LICENSE("GPL");
53