diff options
| author | John Dyson <dyson@FreeBSD.org> | 1997-06-15 17:56:53 +0000 |
|---|---|---|
| committer | John Dyson <dyson@FreeBSD.org> | 1997-06-15 17:56:53 +0000 |
| commit | 6b195d32a1cd26c13df527a3c3d02598119c2f55 (patch) | |
| tree | 0304209c493d06ccf148bd866e0f1c5261434170 /sys/gnu/fs/ext2fs/ext2_linux_ialloc.c | |
| parent | c4bbabfe4f75ae51d86c6eb7098ec17df17ce69b (diff) | |
Notes
Diffstat (limited to 'sys/gnu/fs/ext2fs/ext2_linux_ialloc.c')
| -rw-r--r-- | sys/gnu/fs/ext2fs/ext2_linux_ialloc.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/sys/gnu/fs/ext2fs/ext2_linux_ialloc.c b/sys/gnu/fs/ext2fs/ext2_linux_ialloc.c index c20770bc733b..c93c20e6cd98 100644 --- a/sys/gnu/fs/ext2fs/ext2_linux_ialloc.c +++ b/sys/gnu/fs/ext2fs/ext2_linux_ialloc.c @@ -53,6 +53,7 @@ */ void mark_buffer_dirty(struct buf *bh) { + numdirtybuffers++; bh->b_flags |= B_DELWRI; bh->b_flags &= ~(B_READ | B_ERROR); } @@ -62,6 +63,11 @@ void mark_buffer_dirty(struct buf *bh) */ int ll_w_block(struct buf * bp, int waitfor) { + if (bp->b_flags & B_DELWRI) { + --numdirtybuffers; + if (needsbuffer) + vfs_bio_need_satisfy(); + } bp->b_flags &= ~(B_READ|B_DONE|B_ERROR|B_DELWRI); bp->b_flags |= B_WRITEINPROG; bp->b_vp->v_numoutput++; |
