summaryrefslogtreecommitdiffstats
path: root/sys/kern/vfs_bio.c
diff options
context:
space:
mode:
authormckusick <mckusick@FreeBSD.org>2000-01-18 02:13:26 +0000
committermckusick <mckusick@FreeBSD.org>2000-01-18 02:13:26 +0000
commit41c200930cdd2079853d2198feb1bd858ec26f1b (patch)
treec26a9a40a22b4116eda0050aa77131c9600968bc /sys/kern/vfs_bio.c
parent19a5ef96d9461944ad98ddab0e242cc4f3974211 (diff)
downloadFreeBSD-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>
Diffstat (limited to 'sys/kern/vfs_bio.c')
-rw-r--r--sys/kern/vfs_bio.c1
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);
OpenPOWER on IntegriCloud