aboutsummaryrefslogtreecommitdiff
path: root/sys/ufs/ffs/ffs_vnops.c
diff options
context:
space:
mode:
authorPoul-Henning Kamp <phk@FreeBSD.org>2005-02-08 18:09:11 +0000
committerPoul-Henning Kamp <phk@FreeBSD.org>2005-02-08 18:09:11 +0000
commit88e5b12a2020751dfd3368cd88268be36109dbab (patch)
tree74f26d1c750365766d00443a4a6215c3dda4ede5 /sys/ufs/ffs/ffs_vnops.c
parent7990a18c7b5282ac60ca86c478772d24c169f22f (diff)
downloadsrc-88e5b12a2020751dfd3368cd88268be36109dbab.tar.gz
src-88e5b12a2020751dfd3368cd88268be36109dbab.zip
Drag another softupdates tentacle back into FFS: Now that FFS's
vop_fsync is separate from the internal use we can do the full job there.
Notes
Notes: svn path=/head/; revision=141533
Diffstat (limited to 'sys/ufs/ffs/ffs_vnops.c')
-rw-r--r--sys/ufs/ffs/ffs_vnops.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/sys/ufs/ffs/ffs_vnops.c b/sys/ufs/ffs/ffs_vnops.c
index c800cb5e8ed0..942a7e2c5fc4 100644
--- a/sys/ufs/ffs/ffs_vnops.c
+++ b/sys/ufs/ffs/ffs_vnops.c
@@ -160,6 +160,13 @@ ffs_fsync(struct vop_fsync_args *ap)
int error;
error = ffs_syncvnode(ap->a_vp, ap->a_waitfor);
+#ifdef SOFTUPDATES
+ if (error)
+ return (error);
+ if (ap->a_waitfor == MNT_WAIT &&
+ (ap->a_vp->v_mount->mnt_flag & MNT_SOFTDEP))
+ error = softdep_fsync(ap->a_vp);
+#endif
return (error);
}