mkfsvnode
struct mkfsvnode vp = { fsopts, NULL };
getblk(struct mkfsvnode *vp, daddr_t blkno, int size, int u1 __unused,
bread(struct mkfsvnode *vp, daddr_t blkno, int size, int u2 __unused,
int bread(struct mkfsvnode *, daddr_t, int, int, struct mkfsbuf **);
struct mkfsbuf * getblk(struct mkfsvnode *, daddr_t, int, int, int);
struct mkfsvnode *i_devvp; /* device mkfsvnode for block I/O */
struct mkfsvnode vp, rootvp;
struct mkfsvnode;
struct msdosfsmount *msdosfs_mount(struct mkfsvnode *, int);
int msdosfs_root(struct msdosfsmount *, struct mkfsvnode *);
struct mkfsvnode *de_mkfsvnode; /* addr of mkfsvnode we are part of */
struct mkfsvnode *de_devvp; /* mkfsvnode of blk dev we live on */
int msdosfs_update(struct mkfsvnode *, const struct timespec *,
int msdosfs_gop_alloc(struct mkfsvnode *, off_t, off_t, int);
void msdosfs_gop_markupdate(struct mkfsvnode *, int);
struct mkfsvnode;
ldep->de_mkfsvnode = (struct mkfsvnode *)-1;
msdosfs_root(struct msdosfsmount *pmp, struct mkfsvnode *vp) {
msdosfs_mount(struct mkfsvnode *devvp, int flags)
struct mkfsvnode *pm_devvp; /* mkfsvnode for block device mntd */