git: hammer2 - refactor filesystem sync 7/N
Matthew Dillon
dillon at crater.dragonflybsd.org
Wed Dec 5 14:29:28 PST 2018
commit d2a410239c107d0aeceaf0a17417e92b75be24ed
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date: Wed Dec 5 10:19:31 2018 -0800
hammer2 - refactor filesystem sync 7/N
* Increase default caps for dirty chain and dirty inode counts. The
new SYNCQ semantics allow this number to be arbitrarily large, but
it is still a good idea not to allow it to get out of control.
NOTE: One advantage of higher caps is that it gives the frontend more
time to delete temporary files.
* Get rid of the old syncer speedup / write moderation mechanisms.
Replace with a new VFS_MODIFYING() hook that allows the filesystem
to implement moderation prior to any vnode locks being held.
Remove hammer2_pfs_memory_wait() calls from VOP bodies, implement
the hammer2_pfs_memory_wait() call via VFS_MODIFYING() instead.
* Move the moderation wakeup for the inode count to the syncer, and
change the parameter to use pmp->sideq_count.
Summary of changes:
sys/vfs/hammer2/hammer2.h | 14 ++--
sys/vfs/hammer2/hammer2_cluster.c | 20 +-----
sys/vfs/hammer2/hammer2_flush.c | 2 +
sys/vfs/hammer2/hammer2_inode.c | 22 ++----
sys/vfs/hammer2/hammer2_ioctl.c | 4 +-
sys/vfs/hammer2/hammer2_vfsops.c | 144 ++++++++++++++++----------------------
sys/vfs/hammer2/hammer2_vnops.c | 20 +++---
7 files changed, 91 insertions(+), 135 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/d2a410239c107d0aeceaf0a17417e92b75be24ed
--
DragonFly BSD source repository
More information about the Commits
mailing list