git: hammer2 - bulkfree work, rip-up cluster sync.
Matthew Dillon
dillon at crater.dragonflybsd.org
Fri Aug 28 14:09:36 PDT 2015
commit 53f84d31f557c11439f7905f5f77e32d3c583990
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date: Fri Aug 28 13:49:47 2015 -0700
hammer2 - bulkfree work, rip-up cluster sync.
* bulkfree no longer attempts to flush. Instead it deals with races against
live by refusing to free blocks in L1 freemap chains that have been modified
since the last sync. This is a temporary workaround.
* No longer propagate modify_tid during a flush. modify_tid is now used
as a localized but cluster-aware TID (whereas mirror_tid is only localized
to a cluster node).
* Start work on adding an update_tid to the blockref. This will ultimately
be used by the cluster synchronization code instead of modify_tid.
* Adjust the DESIGN document for the new synchronization concept.
Summary of changes:
sys/vfs/hammer2/DESIGN | 66 ++++++++++-----------
sys/vfs/hammer2/hammer2.h | 18 ++++--
sys/vfs/hammer2/hammer2_bulkscan.c | 62 ++++++++++++++++----
sys/vfs/hammer2/hammer2_chain.c | 26 +++++----
sys/vfs/hammer2/hammer2_disk.h | 52 +++++++++--------
sys/vfs/hammer2/hammer2_flush.c | 116 +++++++++++++++++++++++++------------
sys/vfs/hammer2/hammer2_inode.c | 21 ++++++-
sys/vfs/hammer2/hammer2_ioctl.c | 2 +-
sys/vfs/hammer2/hammer2_vfsops.c | 9 ++-
sys/vfs/hammer2/hammer2_vnops.c | 17 +++---
10 files changed, 258 insertions(+), 131 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/53f84d31f557c11439f7905f5f77e32d3c583990
--
DragonFly BSD source repository
More information about the Commits
mailing list