summaryrefslogtreecommitdiffstats
path: root/sys/ufs
diff options
context:
space:
mode:
authorjulian <julian@FreeBSD.org>1998-05-18 06:38:18 +0000
committerjulian <julian@FreeBSD.org>1998-05-18 06:38:18 +0000
commit617abff0510634d23db8f205a9135cb6ff813740 (patch)
tree086adde277c809308128f696c58a459e7ee0a10f /sys/ufs
parent75bfd9abdd632d86c5f979fad2eb2c86d45e68b8 (diff)
downloadFreeBSD-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.c12
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);
OpenPOWER on IntegriCloud