Rest of the merge.
[linux-2.6/linux-mips.git] / fs / filesystems.c
blobd0a446c6eff4b47a0e3070182add25cff34901d6
1 /*
2 * linux/fs/filesystems.c
4 * Copyright (C) 1991, 1992 Linus Torvalds
6 * table of configured filesystems
7 */
9 #include <linux/config.h>
10 #include <linux/fs.h>
12 #include <linux/minix_fs.h>
13 #include <linux/ext2_fs.h>
14 #include <linux/msdos_fs.h>
15 #include <linux/umsdos_fs.h>
16 #include <linux/proc_fs.h>
17 #include <linux/devfs_fs_kernel.h>
18 #include <linux/nfs_fs.h>
19 #include <linux/iso_fs.h>
20 #include <linux/sysv_fs.h>
21 #include <linux/hpfs_fs.h>
22 #include <linux/smb_fs.h>
23 #include <linux/ncp_fs.h>
24 #include <linux/affs_fs.h>
25 #include <linux/ufs_fs.h>
26 #include <linux/efs_fs.h>
27 #include <linux/romfs_fs.h>
28 #include <linux/auto_fs.h>
29 #include <linux/qnx4_fs.h>
30 #include <linux/udf_fs.h>
31 #include <linux/ntfs_fs.h>
32 #include <linux/hfs_fs.h>
33 #include <linux/devpts_fs.h>
34 #include <linux/bfs_fs.h>
35 #include <linux/adfs_fs.h>
36 #include <linux/openprom_fs.h>
37 #include <linux/major.h>
38 #include <linux/smp.h>
39 #include <linux/smp_lock.h>
40 #ifdef CONFIG_KMOD
41 #include <linux/kmod.h>
42 #endif
43 #include <linux/lockd/bind.h>
44 #include <linux/lockd/xdr.h>
45 #include <linux/init.h>
46 #include <linux/nls.h>
48 #ifdef CONFIG_CODA_FS
49 extern int init_coda(void);
50 #endif
52 #ifdef CONFIG_DEVPTS_FS
53 extern int init_devpts_fs(void);
54 #endif
56 #ifdef CONFIG_SUN_OPENPROMFS
57 extern int init_openprom_fs(void);
58 #endif
60 void __init filesystem_setup(void)
62 #ifdef CONFIG_MINIX_FS
63 init_minix_fs();
64 #endif
66 #ifdef CONFIG_ROMFS_FS
67 init_romfs_fs();
68 #endif
70 #ifdef CONFIG_UMSDOS_FS
71 init_umsdos_fs();
72 #endif
74 #ifdef CONFIG_FAT_FS
75 init_fat_fs();
76 #endif
78 #ifdef CONFIG_MSDOS_FS
79 init_msdos_fs();
80 #endif
82 #ifdef CONFIG_VFAT_FS
83 init_vfat_fs();
84 #endif
86 #ifdef CONFIG_PROC_FS
87 init_proc_fs();
88 #endif
90 init_devfs_fs(); /* Header file may make this empty */
92 #ifdef CONFIG_LOCKD
93 nlmxdr_init();
94 #endif
96 #ifdef CONFIG_NFS_FS
97 init_nfs_fs();
98 #endif
100 #ifdef CONFIG_CODA_FS
101 init_coda();
102 #endif
104 #ifdef CONFIG_SMB_FS
105 init_smb_fs();
106 #endif
108 #ifdef CONFIG_NCP_FS
109 init_ncp_fs();
110 #endif
112 #ifdef CONFIG_ISO9660_FS
113 init_iso9660_fs();
114 #endif
116 #ifdef CONFIG_SYSV_FS
117 init_sysv_fs();
118 #endif
120 #ifdef CONFIG_HPFS_FS
121 init_hpfs_fs();
122 #endif
124 #ifdef CONFIG_NTFS_FS
125 init_ntfs_fs();
126 #endif
128 #ifdef CONFIG_HFS_FS
129 init_hfs_fs();
130 #endif
132 #ifdef CONFIG_AFFS_FS
133 init_affs_fs();
134 #endif
136 #ifdef CONFIG_UFS_FS
137 init_ufs_fs();
138 #endif
140 #ifdef CONFIG_EFS_FS
141 init_efs_fs();
142 #endif
144 #ifdef CONFIG_ADFS_FS
145 init_adfs_fs();
146 #endif
148 #ifdef CONFIG_DEVPTS_FS
149 init_devpts_fs();
150 #endif
152 #ifdef CONFIG_QNX4FS_FS
153 init_qnx4_fs();
154 #endif
156 #ifdef CONFIG_UDF_FS
157 init_udf_fs();
158 #endif
160 #ifdef CONFIG_BFS_FS
161 init_bfs_fs();
162 #endif
164 #ifdef CONFIG_SUN_OPENPROMFS
165 init_openprom_fs();
166 #endif
168 #ifdef CONFIG_NLS
169 init_nls();
170 #endif
173 #ifndef CONFIG_NFSD
174 #ifdef CONFIG_NFSD_MODULE
175 int (*do_nfsservctl)(int, void *, void *) = NULL;
176 #endif
178 asmlinkage sys_nfsservctl(int cmd, void *argp, void *resp)
180 #ifndef CONFIG_NFSD_MODULE
181 return -ENOSYS;
182 #else
183 int ret = -ENOSYS;
185 lock_kernel();
186 if (do_nfsservctl) {
187 ret = do_nfsservctl(cmd, argp, resp);
188 goto out;
190 #ifdef CONFIG_KMOD
191 if (request_module ("nfsd") == 0) {
192 if (do_nfsservctl)
193 ret = do_nfsservctl(cmd, argp, resp);
195 #endif /* CONFIG_KMOD */
196 out:
197 unlock_kernel();
198 return ret;
199 #endif /* CONFIG_NFSD_MODULE */
201 #endif /* CONFIG_NFSD */