diff options
author | mckusick <mckusick@FreeBSD.org> | 2000-01-18 02:13:26 +0000 |
---|---|---|
committer | mckusick <mckusick@FreeBSD.org> | 2000-01-18 02:13:26 +0000 |
commit | 41c200930cdd2079853d2198feb1bd858ec26f1b (patch) | |
tree | c26a9a40a22b4116eda0050aa77131c9600968bc | |
parent | 19a5ef96d9461944ad98ddab0e242cc4f3974211 (diff) | |
download | FreeBSD-src-41c200930cdd2079853d2198feb1bd858ec26f1b.zip FreeBSD-src-41c200930cdd2079853d2198feb1bd858ec26f1b.tar.gz |
Need to reset the buffer pointer to avoid reconsidering the same buffer
again (without this the rollback analysis was being lost). Should reduce
the write count for most workloads.
Submitted by: Craig A Soules <soules+@andrew.cmu.edu>
-rw-r--r-- | sys/kern/vfs_bio.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/kern/vfs_bio.c b/sys/kern/vfs_bio.c index 2ef57c5..5868604 100644 --- a/sys/kern/vfs_bio.c +++ b/sys/kern/vfs_bio.c @@ -1907,6 +1907,7 @@ flushbufqueues(void) TAILQ_INSERT_TAIL(&bufqueues[QUEUE_DIRTY], bp, b_freelist); bp->b_flags |= B_DEFERRED; + bp = TAILQ_FIRST(&bufqueues[QUEUE_DIRTY]); continue; } vfs_bio_awrite(bp); |