git: hammer2 hammer2 - small-embedded-data fixes, syncer fixes
Matthew Dillon
dillon at crater.dragonflybsd.org
Tue Mar 20 22:57:37 PDT 2012
commit 214f4a7748f1ce8213d0e1e2d8a18286b3037956
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date: Tue Mar 20 22:16:19 2012 -0700
hammer2 - small-embedded-data fixes, syncer fixes
* Add a bit of a hack to try to fix an issue where the embedded data
would sometimes not get synchronized. Add the DIRTYEMBED flag
and test for it in various places.
* Remove an improper call to hammer2_chain_modify() on the inode
(the previous handling of embedded data, which was broken).
* Detect and dispose of unlinked files from vop_inactive.
* Fix some inefficiencies in the flush code. When modifying a chain
in order to update its blockref array hammer2_chain_modify() was
recursively setting SUBMODIFIED upward, messing up the flush code's
sequencing and causing it to not completely flush the topology.
* Remove some debugging.
Summary of changes:
sys/vfs/hammer2/hammer2.h | 5 ++-
sys/vfs/hammer2/hammer2_chain.c | 34 ++++++++++++++++++------
sys/vfs/hammer2/hammer2_inode.c | 4 +-
sys/vfs/hammer2/hammer2_vfsops.c | 21 ++++++++++-----
sys/vfs/hammer2/hammer2_vnops.c | 53 ++++++++++++++++++++++++++++++++-----
5 files changed, 89 insertions(+), 28 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/214f4a7748f1ce8213d0e1e2d8a18286b3037956
--
DragonFly BSD source repository
More information about the Commits
mailing list