summaryrefslogtreecommitdiffstats
path: root/sys/ufs/ffs/ffs_vnops.c
diff options
context:
space:
mode:
authorphk <phk@FreeBSD.org>2000-06-16 08:48:51 +0000
committerphk <phk@FreeBSD.org>2000-06-16 08:48:51 +0000
commit4ec91666fac25fe075871c6194581e7842223b07 (patch)
treea9814424289102f1430da05820c25eec0c2114f2 /sys/ufs/ffs/ffs_vnops.c
parent0bbfeb1258f95995e684cee4ce92b26361d8a6b5 (diff)
downloadFreeBSD-src-4ec91666fac25fe075871c6194581e7842223b07.zip
FreeBSD-src-4ec91666fac25fe075871c6194581e7842223b07.tar.gz
Virtualizes & untangles the bioops operations vector.
Ref: Message-ID: <18317.961014572@critter.freebsd.dk> To: current@
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 7d3b2c3..36aae4c 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);
}
OpenPOWER on IntegriCloud