diff options
author | julian <julian@FreeBSD.org> | 1998-05-18 06:38:18 +0000 |
---|---|---|
committer | julian <julian@FreeBSD.org> | 1998-05-18 06:38:18 +0000 |
commit | 617abff0510634d23db8f205a9135cb6ff813740 (patch) | |
tree | 086adde277c809308128f696c58a459e7ee0a10f /sys/ufs | |
parent | 75bfd9abdd632d86c5f979fad2eb2c86d45e68b8 (diff) | |
download | FreeBSD-src-617abff0510634d23db8f205a9135cb6ff813740.zip FreeBSD-src-617abff0510634d23db8f205a9135cb6ff813740.tar.gz |
try stop the user from using mount -u to set the async flag on
a filesystem currently using soft updates.
Also needs a new copy of ffs_softdep.c to complete the fix.
Diffstat (limited to 'sys/ufs')
-rw-r--r-- | sys/ufs/ffs/ffs_vfsops.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/sys/ufs/ffs/ffs_vfsops.c b/sys/ufs/ffs/ffs_vfsops.c index c112dfc..3d06c8b 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.31 (Berkeley) 5/20/95 - * $Id: ffs_vfsops.c,v 1.80 1998/04/20 03:57:41 julian Exp $ + * $Id: ffs_vfsops.c,v 1.81 1998/05/06 05:29:40 msmith Exp $ */ #include "opt_devfs.h" /* for SLICE */ @@ -261,6 +261,16 @@ ffs_mount( mp, path, data, ndp, p) fs->fs_ronly = 0; } + /* + * Soft updates is incompatible with "async", + * so if we are doing softupdates stop the user + * from setting the async flag in an update. + * Softdep_mount() clears it in an initial mount + * or ro->rw remount. + */ + if (mp->mnt_flag & MNT_SOFTDEP) { + mp->mnt_flag &= ~MNT_ASYNC; + } if (fs->fs_ronly == 0) { fs->fs_clean = 0; ffs_sbupdate(ump, MNT_WAIT); |