xref: /csrg-svn/sys/kern/vfs_conf.c (revision 51519)
137488Smckusick /*
237488Smckusick  * Copyright (c) 1989 The Regents of the University of California.
337488Smckusick  * All rights reserved.
437488Smckusick  *
544456Sbostic  * %sccs.include.redist.c%
637488Smckusick  *
7*51519Sbostic  *	@(#)vfs_conf.c	7.5 (Berkeley) 11/01/91
837488Smckusick  */
937488Smckusick 
1051456Sbostic #include <sys/param.h>
1151456Sbostic #include <sys/mount.h>
12*51519Sbostic 
13*51519Sbostic #ifdef FFS
1451456Sbostic #include <ufs/ffs/ffs_extern.h>
1537488Smckusick 
1637488Smckusick /*
1737488Smckusick  * This specifies the filesystem used to mount the root.
1837488Smckusick  * This specification should be done by /etc/config.
1937488Smckusick  */
2051456Sbostic int (*mountroot)() = ffs_mountroot;
21*51519Sbostic #endif
2237488Smckusick 
2337488Smckusick /*
2437488Smckusick  * These define the root filesystem and device.
2537488Smckusick  */
2637488Smckusick struct mount *rootfs;
2737488Smckusick struct vnode *rootdir;
2837488Smckusick 
2937488Smckusick /*
3037488Smckusick  * Set up the filesystem operations for vnodes.
3137488Smckusick  * The types are defined in mount.h.
3237488Smckusick  */
33*51519Sbostic #ifdef FFS
3437488Smckusick extern	struct vfsops ufs_vfsops;
35*51519Sbostic #endif
3637488Smckusick 
3751456Sbostic #ifdef LFS
3851456Sbostic extern	struct vfsops lfs_vfsops;
3937488Smckusick #endif
4037488Smckusick 
4139046Smckusick #ifdef MFS
4239046Smckusick extern	struct vfsops mfs_vfsops;
4339046Smckusick #endif
4439046Smckusick 
4551456Sbostic #ifdef NFS
4651456Sbostic extern	struct vfsops nfs_vfsops;
4751456Sbostic #endif
4851456Sbostic 
4937488Smckusick struct vfsops *vfssw[] = {
5051456Sbostic 	NULL,			/* 0 = MOUNT_NONE */
51*51519Sbostic #ifdef FFS
5237488Smckusick 	&ufs_vfsops,		/* 1 = MOUNT_UFS */
53*51519Sbostic #else
54*51519Sbostic 	NULL,
55*51519Sbostic #endif
5637488Smckusick #ifdef NFS
5737488Smckusick 	&nfs_vfsops,		/* 2 = MOUNT_NFS */
5837488Smckusick #else
5951456Sbostic 	NULL,
6037488Smckusick #endif
6139046Smckusick #ifdef MFS
6239046Smckusick 	&mfs_vfsops,		/* 3 = MOUNT_MFS */
6339046Smckusick #else
6451456Sbostic 	NULL,
6539046Smckusick #endif
6651456Sbostic 	NULL,			/* 4 = MOUNT_PC */
6751456Sbostic #ifdef LFS
6851456Sbostic 	&lfs_vfsops,		/* 5 = MOUNT_LFS */
6951456Sbostic #else
7051456Sbostic 	NULL,
7151456Sbostic #endif
7237488Smckusick };
73