1 /* 2 * Copyright (c) 1989 The Regents of the University of California. 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms are permitted 6 * provided that the above copyright notice and this paragraph are 7 * duplicated in all such forms and that any documentation, 8 * advertising materials, and other materials related to such 9 * distribution and use acknowledge that the software was developed 10 * by the University of California, Berkeley. The name of the 11 * University may not be used to endorse or promote products derived 12 * from this software without specific prior written permission. 13 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR 14 * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED 15 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 16 * 17 * @(#)vfs_conf.c 7.2 (Berkeley) 09/05/89 18 */ 19 20 #include "param.h" 21 #include "mount.h" 22 23 /* 24 * This specifies the filesystem used to mount the root. 25 * This specification should be done by /etc/config. 26 */ 27 extern int ufs_mountroot(); 28 int (*mountroot)() = ufs_mountroot; 29 30 /* 31 * These define the root filesystem and device. 32 */ 33 struct mount *rootfs; 34 struct vnode *rootdir; 35 36 /* 37 * Set up the filesystem operations for vnodes. 38 * The types are defined in mount.h. 39 */ 40 extern struct vfsops ufs_vfsops; 41 42 #ifdef NFS 43 extern struct vfsops nfs_vfsops; 44 #endif 45 46 #ifdef MFS 47 extern struct vfsops mfs_vfsops; 48 #endif 49 50 struct vfsops *vfssw[] = { 51 (struct vfsops *)0, /* 0 = MOUNT_NONE */ 52 &ufs_vfsops, /* 1 = MOUNT_UFS */ 53 #ifdef NFS 54 &nfs_vfsops, /* 2 = MOUNT_NFS */ 55 #else 56 (struct vfsops *)0, 57 #endif 58 #ifdef MFS 59 &mfs_vfsops, /* 3 = MOUNT_MFS */ 60 #else 61 (struct vfsops *)0, 62 #endif 63 (struct vfsops *)0, /* 4 = MOUNT_PC */ 64 }; 65