diff options
author | dyson <dyson@FreeBSD.org> | 1996-03-02 22:18:34 +0000 |
---|---|---|
committer | dyson <dyson@FreeBSD.org> | 1996-03-02 22:18:34 +0000 |
commit | e817145c4ace0e19f0cae5bfc62525baa5d04426 (patch) | |
tree | 37ab4ac552a16a915913135359cc937437238235 /sys | |
parent | 244924821ef4638dfbdaaf5bdb48765b59ef0e82 (diff) | |
download | FreeBSD-src-e817145c4ace0e19f0cae5bfc62525baa5d04426.zip FreeBSD-src-e817145c4ace0e19f0cae5bfc62525baa5d04426.tar.gz |
Handle the bogus device that MFS uses as its VBLK device. We now don't
try to VMIO open it on MFS mounts. This will fix the mfs_badops
panic.
Diffstat (limited to 'sys')
-rw-r--r-- | sys/ufs/ffs/ffs_vfsops.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/sys/ufs/ffs/ffs_vfsops.c b/sys/ufs/ffs/ffs_vfsops.c index 949e0a8..44ae0d6 100644 --- a/sys/ufs/ffs/ffs_vfsops.c +++ b/sys/ufs/ffs/ffs_vfsops.c @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)ffs_vfsops.c 8.8 (Berkeley) 4/18/94 - * $Id: ffs_vfsops.c,v 1.36 1996/02/25 20:12:36 bde Exp $ + * $Id: ffs_vfsops.c,v 1.37 1996/03/02 03:45:12 dyson Exp $ */ #include "opt_quota.h" @@ -584,7 +584,13 @@ ffs_mountfs(devvp, mp, p) } if (ronly == 0) ffs_sbupdate(ump, MNT_WAIT); - vn_vmio_open(devvp, p, p->p_ucred); + /* + * Only VMIO the backing device if the backing device is a real + * block device. This excludes the original MFS implementation. + */ + if ((devvp->v_type == VBLK) && (major(devvp->v_rdev) < nblkdev)) { + vn_vmio_open(devvp, p, p->p_ucred); + } return (0); out: if (bp) |