diff options
author | Niels Provos <provos@cvs.openbsd.org> | 1997-11-10 21:17:30 +0000 |
---|---|---|
committer | Niels Provos <provos@cvs.openbsd.org> | 1997-11-10 21:17:30 +0000 |
commit | 5e99556923aaf18692c1fd4f3da9de79086941fb (patch) | |
tree | 32e57aa1f55655215b4b1fd5156a349688bcb94a | |
parent | a81105eb6ebe20e0b7489711be2ba16c8963a178 (diff) |
dont crash on update mounting.
-rw-r--r-- | sys/msdosfs/msdosfs_vfsops.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/sys/msdosfs/msdosfs_vfsops.c b/sys/msdosfs/msdosfs_vfsops.c index e58a960ed56..053a646f5e3 100644 --- a/sys/msdosfs/msdosfs_vfsops.c +++ b/sys/msdosfs/msdosfs_vfsops.c @@ -1,4 +1,4 @@ -/* $OpenBSD: msdosfs_vfsops.c,v 1.11 1997/11/09 23:15:12 millert Exp $ */ +/* $OpenBSD: msdosfs_vfsops.c,v 1.12 1997/11/10 21:17:29 provos Exp $ */ /* $NetBSD: msdosfs_vfsops.c,v 1.44 1996/12/22 10:10:32 cgd Exp $ */ /*- @@ -119,10 +119,7 @@ msdosfs_mount(mp, path, data, ndp, p) flags = WRITECLOSE; if (mp->mnt_flag & MNT_FORCE) flags |= FORCECLOSE; - if (vfs_busy(mp, 0, 0, p)) - return (EBUSY); error = vflush(mp, NULLVP, flags); - vfs_unbusy(mp, p); } if (!error && (mp->mnt_flag & MNT_RELOAD)) /* not yet implemented */ @@ -504,8 +501,7 @@ msdosfs_mountfs(devvp, mp, p, argp) pmp->pm_fmod = 1; mp->mnt_data = (qaddr_t)pmp; mp->mnt_stat.f_fsid.val[0] = (long)dev; - mp->mnt_stat.f_fsid.val[1] = makefstype(MOUNT_MSDOS); - mp->mnt_flag |= MNT_LOCAL; + mp->mnt_stat.f_fsid.val[1] = mp->mnt_vfc->vfc_typenum; #ifdef QUOTA /* * If we ever do quotas for DOS filesystems this would be a place @@ -519,7 +515,8 @@ msdosfs_mountfs(devvp, mp, p, argp) return (0); -error_exit:; +error_exit: + devvp->v_specmountpoint = NULL; if (bp) brelse(bp); (void) VOP_CLOSE(devvp, ronly ? FREAD : FREAD|FWRITE, NOCRED, p); |