From d29bbd04d668742aca5c9d535bab3eb4cf15152e Mon Sep 17 00:00:00 2001 From: "Thordur I. Bjornsson" Date: Thu, 7 Apr 2011 13:42:54 +0000 Subject: merge vfs_conf.c and vfs_init.c and retire vfs_conf.c; The contents belong togather a long with other crud, that should get moved at some point. ok deraadt@, miod@ --- sys/kern/vfs_init.c | 106 +++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 97 insertions(+), 9 deletions(-) (limited to 'sys/kern/vfs_init.c') diff --git a/sys/kern/vfs_init.c b/sys/kern/vfs_init.c index 839af0e74e2..63b626b9ce6 100644 --- a/sys/kern/vfs_init.c +++ b/sys/kern/vfs_init.c @@ -1,4 +1,4 @@ -/* $OpenBSD: vfs_init.c,v 1.28 2010/12/21 20:14:43 thib Exp $ */ +/* $OpenBSD: vfs_init.c,v 1.29 2011/04/07 13:42:53 thib Exp $ */ /* $NetBSD: vfs_init.c,v 1.6 1996/02/09 19:00:58 christos Exp $ */ /* @@ -39,19 +39,107 @@ #include #include -#include #include -#include -#include -#include -#include -#include -#include -#include #include +#include struct pool namei_pool; +/* This defines the root filesystem. */ +struct vnode *rootvnode; + +/* Set up the filesystem operations for vnodes. */ +#ifdef FFS +extern const struct vfsops ffs_vfsops; +#endif + +#ifdef MFS +extern const struct vfsops mfs_vfsops; +#endif + +#ifdef MSDOSFS +extern const struct vfsops msdosfs_vfsops; +#endif + +#ifdef NFSCLIENT +extern const struct vfsops nfs_vfsops; +#endif + +#ifdef PROCFS +extern const struct vfsops procfs_vfsops; +#endif + +#ifdef CD9660 +extern const struct vfsops cd9660_vfsops; +#endif + +#ifdef EXT2FS +extern const struct vfsops ext2fs_vfsops; +#endif + +#ifdef NNPFS +extern const struct vfsops nnpfs_vfsops; +#endif + +#ifdef NTFS +extern const struct vfsops ntfs_vfsops; +#endif + +#ifdef UDF +extern const struct vfsops udf_vfsops; +#endif + +/* Set up the filesystem operations for vnodes. */ +static struct vfsconf vfsconflist[] = { +#ifdef FFS + { &ffs_vfsops, MOUNT_FFS, 1, 0, MNT_LOCAL, NULL }, +#endif + +#ifdef MFS + { &mfs_vfsops, MOUNT_MFS, 3, 0, MNT_LOCAL, NULL }, +#endif + +#ifdef EXT2FS + { &ext2fs_vfsops, MOUNT_EXT2FS, 17, 0, MNT_LOCAL, NULL }, +#endif + +#ifdef CD9660 + { &cd9660_vfsops, MOUNT_CD9660, 14, 0, MNT_LOCAL, NULL }, +#endif + +#ifdef MSDOSFS + { &msdosfs_vfsops, MOUNT_MSDOS, 4, 0, MNT_LOCAL, NULL }, +#endif + +#ifdef NFSCLIENT + { &nfs_vfsops, MOUNT_NFS, 2, 0, 0, NULL }, +#endif + +#ifdef NNPFS + { &nnpfs_vfsops, MOUNT_NNPFS, 21, 0, 0, NULL }, +#endif + +#ifdef PROCFS + { &procfs_vfsops, MOUNT_PROCFS, 12, 0, 0, NULL }, +#endif + +#ifdef NTFS + { &ntfs_vfsops, MOUNT_NTFS, 6, 0, MNT_LOCAL, NULL }, +#endif + +#ifdef UDF + { &udf_vfsops, MOUNT_UDF, 13, 0, MNT_LOCAL, NULL }, +#endif +}; + + +/* + * Initially the size of the list, vfsinit will set maxvfsconf + * to the highest defined type number. + */ +int maxvfsconf = sizeof(vfsconflist) / sizeof(struct vfsconf); +struct vfsconf *vfsconf = vfsconflist; + /* Initialize the vnode structures and initialize each file system type. */ void vfsinit(void) -- cgit v1.2.3