Commit | Line | Data |
---|---|---|
3c4390e8 KM |
1 | /* |
2 | * Copyright (c) 1989 The Regents of the University of California. | |
3 | * All rights reserved. | |
4 | * | |
dbf0c423 | 5 | * %sccs.include.redist.c% |
3c4390e8 | 6 | * |
c4719c6a | 7 | * @(#)vfs_conf.c 7.6 (Berkeley) %G% |
3c4390e8 KM |
8 | */ |
9 | ||
12a5f5d3 KB |
10 | #include <sys/param.h> |
11 | #include <sys/mount.h> | |
068edbde KB |
12 | |
13 | #ifdef FFS | |
12a5f5d3 | 14 | #include <ufs/ffs/ffs_extern.h> |
3c4390e8 KM |
15 | |
16 | /* | |
17 | * This specifies the filesystem used to mount the root. | |
18 | * This specification should be done by /etc/config. | |
19 | */ | |
12a5f5d3 | 20 | int (*mountroot)() = ffs_mountroot; |
068edbde | 21 | #endif |
3c4390e8 KM |
22 | |
23 | /* | |
24 | * These define the root filesystem and device. | |
25 | */ | |
26 | struct mount *rootfs; | |
27 | struct vnode *rootdir; | |
28 | ||
29 | /* | |
30 | * Set up the filesystem operations for vnodes. | |
31 | * The types are defined in mount.h. | |
32 | */ | |
068edbde | 33 | #ifdef FFS |
3c4390e8 | 34 | extern struct vfsops ufs_vfsops; |
c4719c6a CT |
35 | #define UFS_VFSOPS &ufs_vfsops |
36 | #else | |
37 | #define UFS_VFSOPS NULL | |
068edbde | 38 | #endif |
3c4390e8 | 39 | |
12a5f5d3 KB |
40 | #ifdef LFS |
41 | extern struct vfsops lfs_vfsops; | |
c4719c6a CT |
42 | #define LFS_VFSOPS &lfs_vfsops |
43 | #else | |
44 | #define LFS_VFSOPS NULL | |
3c4390e8 KM |
45 | #endif |
46 | ||
9caf22f9 KM |
47 | #ifdef MFS |
48 | extern struct vfsops mfs_vfsops; | |
c4719c6a CT |
49 | #define MFS_VFSOPS &mfs_vfsops |
50 | #else | |
51 | #define MFS_VFSOPS NULL | |
9caf22f9 KM |
52 | #endif |
53 | ||
12a5f5d3 KB |
54 | #ifdef NFS |
55 | extern struct vfsops nfs_vfsops; | |
c4719c6a CT |
56 | #define NFS_VFSOPS &nfs_vfsops |
57 | #else | |
58 | #define NFS_VFSOPS NULL | |
12a5f5d3 KB |
59 | #endif |
60 | ||
3c4390e8 | 61 | struct vfsops *vfssw[] = { |
12a5f5d3 | 62 | NULL, /* 0 = MOUNT_NONE */ |
c4719c6a CT |
63 | UFS_VFSOPS, /* 1 = MOUNT_UFS */ |
64 | NFS_VFSOPS, /* 2 = MOUNT_NFS */ | |
65 | MFS_VFSOPS, /* 3 = MOUNT_MFS */ | |
12a5f5d3 | 66 | NULL, /* 4 = MOUNT_PC */ |
c4719c6a | 67 | LFS_VFSOPS, /* 5 = MOUNT_LFS */ |
3c4390e8 | 68 | }; |