git: hammer2 hammer2 - Major hammer2_chain_*() API cleanup
Matthew Dillon
dillon at crater.dragonflybsd.org
Wed Mar 21 22:35:02 PDT 2012
commit 01eabad4d93a8dc8f0f01a6209b384b1e010bb8c
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date: Wed Mar 21 21:10:40 2012 -0700
hammer2 - Major hammer2_chain_*() API cleanup
* Do a major rewrite of the hammer2_chain_*() API functions, primarily
dealing with whether the caller wants data instantiated for a chain
element or not.
Also revamp the locking calls. Integrate the ref count into
hammer2_chain_lock() to simplify the operation.
* Add infrastructure to allow a minimum physical I/O size to be specified
independently from the allocation size. Not finished yet and currently
disabled.
* Optimize I/O a little, but this still needs a ton of work.
Set B_CLUSTEROK for logical buffers.
* Add some statistics gathering.
* Remove several duplicative functions.
Summary of changes:
sys/vfs/hammer2/TODO | 3 +
sys/vfs/hammer2/hammer2.h | 45 ++-
sys/vfs/hammer2/hammer2_chain.c | 1116 +++++++++++++++++++++---------------
sys/vfs/hammer2/hammer2_disk.h | 39 ++-
sys/vfs/hammer2/hammer2_freemap.c | 45 ++-
sys/vfs/hammer2/hammer2_inode.c | 25 +-
sys/vfs/hammer2/hammer2_subr.c | 6 +-
sys/vfs/hammer2/hammer2_vfsops.c | 60 ++-
sys/vfs/hammer2/hammer2_vnops.c | 169 +++---
9 files changed, 914 insertions(+), 594 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/01eabad4d93a8dc8f0f01a6209b384b1e010bb8c
--
DragonFly BSD source repository
More information about the Commits
mailing list