diff options
Diffstat (limited to 'sys/kern/vfs_bio.c')
-rw-r--r-- | sys/kern/vfs_bio.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/kern/vfs_bio.c b/sys/kern/vfs_bio.c index b642040..44879ff 100644 --- a/sys/kern/vfs_bio.c +++ b/sys/kern/vfs_bio.c @@ -961,9 +961,11 @@ bdwrite(struct buf *bp) */ vp = bp->b_vp; bo = bp->b_bufobj; - if ((td->td_pflags & TDP_COWINPROGRESS) == 0) + if ((td->td_pflags & (TDP_COWINPROGRESS|TDP_INBDFLUSH)) == 0) { + td->td_pflags |= TDP_INBDFLUSH; BO_BDFLUSH(bo, bp); - else + td->td_pflags &= ~TDP_INBDFLUSH; + } else recursiveflushes++; bdirty(bp); |