diff options
author | wollman <wollman@FreeBSD.org> | 1994-09-21 03:47:43 +0000 |
---|---|---|
committer | wollman <wollman@FreeBSD.org> | 1994-09-21 03:47:43 +0000 |
commit | c289ac89a1707f8e0720ce4e9225ce1ebd9e122b (patch) | |
tree | 1c73df5527fa425afd9acc6b6f44948163165c7b /sys/kern/vfs_conf.c | |
parent | 3ba6929687399003ec8c92ed71c166eb83f2c7bb (diff) | |
download | FreeBSD-src-c289ac89a1707f8e0720ce4e9225ce1ebd9e122b.zip FreeBSD-src-c289ac89a1707f8e0720ce4e9225ce1ebd9e122b.tar.gz |
Implemented loadable VFS modules, and made most existing filesystems
loadable. (NFS is a notable exception.)
Diffstat (limited to 'sys/kern/vfs_conf.c')
-rw-r--r-- | sys/kern/vfs_conf.c | 218 |
1 files changed, 1 insertions, 217 deletions
diff --git a/sys/kern/vfs_conf.c b/sys/kern/vfs_conf.c index 3480333..6e1eb1d 100644 --- a/sys/kern/vfs_conf.c +++ b/sys/kern/vfs_conf.c @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)vfs_conf.c 8.8 (Berkeley) 3/31/94 - * $Id: vfs_conf.c,v 1.3 1994/08/20 16:03:12 davidg Exp $ + * $Id: vfs_conf.c,v 1.4 1994/09/19 15:41:13 dfr Exp $ */ #include <sys/param.h> @@ -50,219 +50,3 @@ int (*mountroot)() = ffs_mountroot; struct vnode *rootvnode; -/* - * Set up the filesystem operations for vnodes. - * The types are defined in mount.h. - */ -#ifdef FFS -extern struct vfsops ufs_vfsops; -#define UFS_VFSOPS &ufs_vfsops -#else -#define UFS_VFSOPS NULL -#endif - -#ifdef LFS -extern struct vfsops lfs_vfsops; -#define LFS_VFSOPS &lfs_vfsops -#else -#define LFS_VFSOPS NULL -#endif - -#ifdef MFS -extern struct vfsops mfs_vfsops; -#define MFS_VFSOPS &mfs_vfsops -#else -#define MFS_VFSOPS NULL -#endif - -#ifdef NFS -extern struct vfsops nfs_vfsops; -#define NFS_VFSOPS &nfs_vfsops -#else -#define NFS_VFSOPS NULL -#endif - -#ifdef FDESC -extern struct vfsops fdesc_vfsops; -#define FDESC_VFSOPS &fdesc_vfsops -#else -#define FDESC_VFSOPS NULL -#endif - -#ifdef PORTAL -extern struct vfsops portal_vfsops; -#define PORTAL_VFSOPS &portal_vfsops -#else -#define PORTAL_VFSOPS NULL -#endif - -#ifdef NULLFS -extern struct vfsops null_vfsops; -#define NULL_VFSOPS &null_vfsops -#else -#define NULL_VFSOPS NULL -#endif - -#ifdef UMAPFS -extern struct vfsops umap_vfsops; -#define UMAP_VFSOPS &umap_vfsops -#else -#define UMAP_VFSOPS NULL -#endif - -#ifdef KERNFS -extern struct vfsops kernfs_vfsops; -#define KERNFS_VFSOPS &kernfs_vfsops -#else -#define KERNFS_VFSOPS NULL -#endif - -#ifdef PROCFS -extern struct vfsops procfs_vfsops; -#define PROCFS_VFSOPS &procfs_vfsops -#else -#define PROCFS_VFSOPS NULL -#endif - -#ifdef AFS -extern struct vfsops afs_vfsops; -#define AFS_VFSOPS &afs_vfsops -#else -#define AFS_VFSOPS NULL -#endif - -#ifdef CD9660 -extern struct vfsops cd9660_vfsops; -#define CD9660_VFSOPS &cd9660_vfsops -#else -#define CD9660_VFSOPS NULL -#endif - -#ifdef MSDOSFS -extern struct vfsops msdosfs_vfsops; -#define MSDOSFS_VFSOPS &msdosfs_vfsops -#else -#define MSDOSFS_VFSOPS NULL -#endif - -#ifdef UNION -extern struct vfsops union_vfsops; -#define UNION_VFSOPS &union_vfsops -#else -#define UNION_VFSOPS NULL -#endif - -struct vfsops *vfssw[] = { - NULL, /* 0 = MOUNT_NONE */ - UFS_VFSOPS, /* 1 = MOUNT_UFS */ - NFS_VFSOPS, /* 2 = MOUNT_NFS */ - MFS_VFSOPS, /* 3 = MOUNT_MFS */ - MSDOSFS_VFSOPS, /* 4 = MOUNT_MSDOS */ - LFS_VFSOPS, /* 5 = MOUNT_LFS */ - NULL, /* 6 = MOUNT_LOFS */ - FDESC_VFSOPS, /* 7 = MOUNT_FDESC */ - PORTAL_VFSOPS, /* 8 = MOUNT_PORTAL */ - NULL_VFSOPS, /* 9 = MOUNT_NULL */ - UMAP_VFSOPS, /* 10 = MOUNT_UMAP */ - KERNFS_VFSOPS, /* 11 = MOUNT_KERNFS */ - PROCFS_VFSOPS, /* 12 = MOUNT_PROCFS */ - AFS_VFSOPS, /* 13 = MOUNT_AFS */ - CD9660_VFSOPS, /* 14 = MOUNT_CD9660 */ - UNION_VFSOPS, /* 15 = MOUNT_UNION */ - 0 -}; - - -/* - * - * vfs_opv_descs enumerates the list of vnode classes, each with it's own - * vnode operation vector. It is consulted at system boot to build operation - * vectors. It is NULL terminated. - * - */ -extern struct vnodeopv_desc ffs_vnodeop_opv_desc; -extern struct vnodeopv_desc ffs_specop_opv_desc; -extern struct vnodeopv_desc ffs_fifoop_opv_desc; -extern struct vnodeopv_desc lfs_vnodeop_opv_desc; -extern struct vnodeopv_desc lfs_specop_opv_desc; -extern struct vnodeopv_desc lfs_fifoop_opv_desc; -extern struct vnodeopv_desc mfs_vnodeop_opv_desc; -extern struct vnodeopv_desc dead_vnodeop_opv_desc; -extern struct vnodeopv_desc fifo_vnodeop_opv_desc; -extern struct vnodeopv_desc spec_vnodeop_opv_desc; -extern struct vnodeopv_desc nfsv2_vnodeop_opv_desc; -extern struct vnodeopv_desc spec_nfsv2nodeop_opv_desc; -extern struct vnodeopv_desc fifo_nfsv2nodeop_opv_desc; -extern struct vnodeopv_desc fdesc_vnodeop_opv_desc; -extern struct vnodeopv_desc portal_vnodeop_opv_desc; -extern struct vnodeopv_desc null_vnodeop_opv_desc; -extern struct vnodeopv_desc umap_vnodeop_opv_desc; -extern struct vnodeopv_desc kernfs_vnodeop_opv_desc; -extern struct vnodeopv_desc procfs_vnodeop_opv_desc; -extern struct vnodeopv_desc cd9660_vnodeop_opv_desc; -extern struct vnodeopv_desc cd9660_specop_opv_desc; -extern struct vnodeopv_desc cd9660_fifoop_opv_desc; -extern struct vnodeopv_desc msdosfs_vnodeop_opv_desc; -extern struct vnodeopv_desc union_vnodeop_opv_desc; - -struct vnodeopv_desc *vfs_opv_descs[] = { - &ffs_vnodeop_opv_desc, - &ffs_specop_opv_desc, -#ifdef FIFO - &ffs_fifoop_opv_desc, -#endif - &dead_vnodeop_opv_desc, -#ifdef FIFO - &fifo_vnodeop_opv_desc, -#endif - &spec_vnodeop_opv_desc, -#ifdef LFS - &lfs_vnodeop_opv_desc, - &lfs_specop_opv_desc, -#ifdef FIFO - &lfs_fifoop_opv_desc, -#endif -#endif -#ifdef MFS - &mfs_vnodeop_opv_desc, -#endif -#ifdef NFS - &nfsv2_vnodeop_opv_desc, - &spec_nfsv2nodeop_opv_desc, -#ifdef FIFO - &fifo_nfsv2nodeop_opv_desc, -#endif -#endif -#ifdef FDESC - &fdesc_vnodeop_opv_desc, -#endif -#ifdef PORTAL - &portal_vnodeop_opv_desc, -#endif -#ifdef NULLFS - &null_vnodeop_opv_desc, -#endif -#ifdef UMAPFS - &umap_vnodeop_opv_desc, -#endif -#ifdef KERNFS - &kernfs_vnodeop_opv_desc, -#endif -#ifdef PROCFS - &procfs_vnodeop_opv_desc, -#endif -#ifdef CD9660 - &cd9660_vnodeop_opv_desc, - &cd9660_specop_opv_desc, -#ifdef FIFO - &cd9660_fifoop_opv_desc, -#endif -#endif -#ifdef MSDOSFS - &msdosfs_vnodeop_opv_desc, -#endif -#ifdef UNION - &union_vnodeop_opv_desc, -#endif - NULL -}; |