diff options
author | phk <phk@FreeBSD.org> | 2000-06-16 08:48:51 +0000 |
---|---|---|
committer | phk <phk@FreeBSD.org> | 2000-06-16 08:48:51 +0000 |
commit | 4ec91666fac25fe075871c6194581e7842223b07 (patch) | |
tree | a9814424289102f1430da05820c25eec0c2114f2 /sys/ufs/ffs/ffs_vnops.c | |
parent | 0bbfeb1258f95995e684cee4ce92b26361d8a6b5 (diff) | |
download | FreeBSD-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.c | 7 |
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); } |