git: kernel - Fix degenerate cluster_write() cases
Matthew Dillon
dillon at crater.dragonflybsd.org
Mon Apr 30 15:49:54 PDT 2012
commit b642a6c1f5bbb295e29522d99c65038f459288ac
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date: Mon Apr 30 15:44:53 2012 -0700
kernel - Fix degenerate cluster_write() cases
* cluster_write() should bdwrite() as a fallback, not bawrite().
Note that cluster_awrite() always bawrite()'s or equivalent. The
DragonFly API split the functions out, so cluster_write() can now
almost always bdwrite() for the non-clustered case.
* Solves some serious performance and real-time disk space usage issues
when HAMMER1 was updated to use the cluster calls. The disk space
would be recovered by the daily cleanup but the extra writes could
end up being quite excessive, 25:1 unnecessary writes vs necessary
writes.
Reported-by: multiple, testing by tuxillo
Summary of changes:
sys/kern/vfs_cluster.c | 11 +++++++----
1 files changed, 7 insertions(+), 4 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/b642a6c1f5bbb295e29522d99c65038f459288ac
--
DragonFly BSD source repository
More information about the Commits
mailing list