DragonFly commits List (threaded) for 2012-03
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]
git: hammer2 hammer2 - Implement variable-sized indirect blocks, clustered reads
commit 6ba3b984736974a60373ed1610426443c5be4266
Author: Matthew Dillon <dillon@apollo.backplane.com>
Date: Mon Mar 19 18:34:45 2012 -0700
hammer2 - Implement variable-sized indirect blocks, clustered reads
* Implement 4K indirect blocks as well as 64K indirect blocks
* Do not flush the chains for VOP_FSYNC() calls issued from 'sync' or
from the syncer, only flush the chains when called from fsync().
This solves a fairly nasty repeated copy-on-write ops on the same block
in the topology.
* Issue appropriate cluster_read() calls instead of bread().
* Implement forward-looking bmap across multiple blocks instead of just one.
Summary of changes:
sys/vfs/hammer2/hammer2.h | 31 +++++--
sys/vfs/hammer2/hammer2_chain.c | 171 ++++++++++++++++++++++++++++--------
sys/vfs/hammer2/hammer2_disk.h | 16 ++--
sys/vfs/hammer2/hammer2_freemap.c | 55 ++++++------
sys/vfs/hammer2/hammer2_inode.c | 6 +-
sys/vfs/hammer2/hammer2_subr.c | 25 ++++++
sys/vfs/hammer2/hammer2_vnops.c | 124 ++++++++++++++++++++------
7 files changed, 314 insertions(+), 114 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/6ba3b984736974a60373ed1610426443c5be4266
--
DragonFly BSD source repository
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]