summaryrefslogtreecommitdiffstats
path: root/sys/gnu
diff options
context:
space:
mode:
authorjulian <julian@FreeBSD.org>1998-07-08 01:04:33 +0000
committerjulian <julian@FreeBSD.org>1998-07-08 01:04:33 +0000
commit78a155ddaf49598651f8b5c0d320e4f5d2b49ee3 (patch)
tree6f1f0ad6440f38aa17066e9b0245b0c8e2c8095e /sys/gnu
parentd306217e883e7f102fce3e41810679494964038c (diff)
downloadFreeBSD-src-78a155ddaf49598651f8b5c0d320e4f5d2b49ee3.zip
FreeBSD-src-78a155ddaf49598651f8b5c0d320e4f5d2b49ee3.tar.gz
Catch a few corner cases where FreeBSD differs enough from BSD 4.4 to
confuse Soft updates.. Should solve several "dangling deps" panics.
Diffstat (limited to 'sys/gnu')
-rw-r--r--sys/gnu/ext2fs/ext2_readwrite.c3
-rw-r--r--sys/gnu/fs/ext2fs/ext2_readwrite.c3
2 files changed, 4 insertions, 2 deletions
diff --git a/sys/gnu/ext2fs/ext2_readwrite.c b/sys/gnu/ext2fs/ext2_readwrite.c
index b49666a..7efe39a 100644
--- a/sys/gnu/ext2fs/ext2_readwrite.c
+++ b/sys/gnu/ext2fs/ext2_readwrite.c
@@ -254,7 +254,8 @@ WRITE(ap)
error =
uiomove((char *)bp->b_data + blkoffset, (int)xfersize, uio);
- if (ioflag & IO_VMIO)
+ if ((ioflag & IO_VMIO) &&
+ (LIST_FIRST(&bp->b_dep) == NULL)) /* in ext2fs? */
bp->b_flags |= B_RELBUF;
if (ioflag & IO_SYNC) {
diff --git a/sys/gnu/fs/ext2fs/ext2_readwrite.c b/sys/gnu/fs/ext2fs/ext2_readwrite.c
index b49666a..7efe39a 100644
--- a/sys/gnu/fs/ext2fs/ext2_readwrite.c
+++ b/sys/gnu/fs/ext2fs/ext2_readwrite.c
@@ -254,7 +254,8 @@ WRITE(ap)
error =
uiomove((char *)bp->b_data + blkoffset, (int)xfersize, uio);
- if (ioflag & IO_VMIO)
+ if ((ioflag & IO_VMIO) &&
+ (LIST_FIRST(&bp->b_dep) == NULL)) /* in ext2fs? */
bp->b_flags |= B_RELBUF;
if (ioflag & IO_SYNC) {
OpenPOWER on IntegriCloud