aboutsummaryrefslogtreecommitdiff
path: root/sys/ufs/ffs/ffs_vnops.c
diff options
context:
space:
mode:
authorPoul-Henning Kamp <phk@FreeBSD.org>2000-06-16 08:48:51 +0000
committerPoul-Henning Kamp <phk@FreeBSD.org>2000-06-16 08:48:51 +0000
commita2e7a027a751cc513cc6003d21ace9f2c82cc41a (patch)
treebe9d43940b9a04c72198b4d9cb5742539455766d /sys/ufs/ffs/ffs_vnops.c
parent57b102722a16a614ec608dd7a0bce80f12b34db6 (diff)
downloadsrc-a2e7a027a751cc513cc6003d21ace9f2c82cc41a.tar.gz
src-a2e7a027a751cc513cc6003d21ace9f2c82cc41a.zip
Virtualizes & untangles the bioops operations vector.
Ref: Message-ID: <18317.961014572@critter.freebsd.dk> To: current@
Notes
Notes: svn path=/head/; revision=61724
Diffstat (limited to 'sys/ufs/ffs/ffs_vnops.c')
-rw-r--r--sys/ufs/ffs/ffs_vnops.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/ufs/ffs/ffs_vnops.c b/sys/ufs/ffs/ffs_vnops.c
index 7d3b2c32a795..36aae4c366ed 100644
--- a/sys/ufs/ffs/ffs_vnops.c
+++ b/sys/ufs/ffs/ffs_vnops.c
@@ -175,7 +175,7 @@ loop:
continue;
if (!wait && LIST_FIRST(&bp->b_dep) != NULL &&
(bp->b_flags & B_DEFERRED) == 0 &&
- bioops.io_countdeps && (*bioops.io_countdeps)(bp, 0)) {
+ buf_countdeps(bp, 0)) {
bp->b_flags |= B_DEFERRED;
continue;
}
@@ -278,5 +278,8 @@ loop:
}
}
splx(s);
- return (UFS_UPDATE(vp, wait));
+ error = UFS_UPDATE(vp, wait);
+ if (error == 0 && vp->v_mount && (vp->v_mount->mnt_flag & MNT_SOFTDEP))
+ error = softdep_fsync(vp);
+ return (error);
}