summaryrefslogtreecommitdiffstats
path: root/sys/ufs/ffs/ffs_vfsops.c
diff options
context:
space:
mode:
authormckusick <mckusick@FreeBSD.org>2001-03-07 07:09:55 +0000
committermckusick <mckusick@FreeBSD.org>2001-03-07 07:09:55 +0000
commit61db3f4296e7cbf26765b9523064a58053f033d1 (patch)
treebf90f85e1534824e6dd81dcd98746b86c51cf6c1 /sys/ufs/ffs/ffs_vfsops.c
parent48c0c7d0fdb3955d984e7d3880153b7b5c711565 (diff)
downloadFreeBSD-src-61db3f4296e7cbf26765b9523064a58053f033d1.zip
FreeBSD-src-61db3f4296e7cbf26765b9523064a58053f033d1.tar.gz
Fixes to track snapshot copy-on-write checking in the specinfo
structure rather than assuming that the device vnode would reside in the FFS filesystem (which is obviously a broken assumption with the device filesystem).
Diffstat (limited to 'sys/ufs/ffs/ffs_vfsops.c')
-rw-r--r--sys/ufs/ffs/ffs_vfsops.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/sys/ufs/ffs/ffs_vfsops.c b/sys/ufs/ffs/ffs_vfsops.c
index 4558780..78aaae5 100644
--- a/sys/ufs/ffs/ffs_vfsops.c
+++ b/sys/ufs/ffs/ffs_vfsops.c
@@ -987,15 +987,15 @@ loop:
goto loop;
}
}
- if (waitfor == MNT_NOWAIT) {
+#ifdef QUOTA
+ qsync(mp);
+#endif
+ if (waitfor != MNT_LAZY) {
vn_lock(ump->um_devvp, LK_EXCLUSIVE | LK_RETRY, p);
if ((error = VOP_FSYNC(ump->um_devvp, cred, waitfor, p)) != 0)
allerror = error;
VOP_UNLOCK(ump->um_devvp, 0, p);
}
-#ifdef QUOTA
- qsync(mp);
-#endif
/*
* Write back modified superblock.
*/
OpenPOWER on IntegriCloud