diff options
| author | Julian Elischer <julian@FreeBSD.org> | 1998-07-08 01:04:33 +0000 |
|---|---|---|
| committer | Julian Elischer <julian@FreeBSD.org> | 1998-07-08 01:04:33 +0000 |
| commit | 6deaf84b1fb56f29ac8bae22e9313aa71d86444f (patch) | |
| tree | 6f5419d1450beb634c97ec948be83d1330f06e1f /sys/ufs | |
| parent | b5fe8fabdac7fbabbd2993abfa16e14570173a8c (diff) | |
Notes
Diffstat (limited to 'sys/ufs')
| -rw-r--r-- | sys/ufs/ufs/ufs_readwrite.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/sys/ufs/ufs/ufs_readwrite.c b/sys/ufs/ufs/ufs_readwrite.c index a2e4fd412cfb..b4d50e7b81f3 100644 --- a/sys/ufs/ufs/ufs_readwrite.c +++ b/sys/ufs/ufs/ufs_readwrite.c @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)ufs_readwrite.c 8.11 (Berkeley) 5/8/95 - * $Id: ufs_readwrite.c,v 1.49 1998/04/06 18:18:50 peter Exp $ + * $Id: ufs_readwrite.c,v 1.50 1998/06/04 17:04:44 dfr Exp $ */ #define BLKSIZE(a, b, c) blksize(a, b, c) @@ -210,7 +210,8 @@ READ(ap) if (error) break; - if (ioflag & IO_VMIO) { + if ((ioflag & IO_VMIO) && + (LIST_FIRST(&bp->b_dep) == NULL)) { bp->b_flags |= B_RELBUF; brelse(bp); } else { @@ -219,7 +220,8 @@ READ(ap) } if (bp != NULL) { - if (ioflag & IO_VMIO) { + if ((ioflag & IO_VMIO) && + (LIST_FIRST(&bp->b_dep) == NULL)) { bp->b_flags |= B_RELBUF; brelse(bp); } else { @@ -355,7 +357,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)) bp->b_flags |= B_RELBUF; if (ioflag & IO_SYNC) { |
