DragonFly commits List (threaded) for 2008-06
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]
cvs commit: src/sys/kern vfs_bio.c
dillon 2008/06/09 22:02:09 PDT
DragonFly src repository
Modified files:
sys/kern vfs_bio.c
Log:
Change bwillwrite() to smooth out performance under heavy loads. Blocking
based on strict hystersis was being used to try to gang flushes together
but filesystems can still blow out the buffer cache and cause processes
to block for long periods of time waiting for the dirty count to drop
significantly.
Instead, as the number of dirty buffers exceeds the desired maximum
bwillwrite() imposes a dynamic delay which increases as the number of
dirty buffers increase. This improves the stall behavior under heavy loads
and keeps the system responsive.
TODO: The algorithm needs to have a per-LWP heuristic to penalize heavy
writers more then light ones.
Revision Changes Path
1.103 +41 -10 src/sys/kern/vfs_bio.c
http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_bio.c.diff?r1=1.102&r2=1.103&f=u
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]