commit e49c5ac8b5dc7059612ce9d50f33f45b3bdcacb6 Author: Matthew Dillon <dil...@apollo.backplane.com> Date: Sat Dec 1 13:57:35 2018 -0800
hammer2 - refactor filesystem sync 5/N * Dependency ops need one atomic wrapper. Adjust the use of pmp->list_spin for the atomic wrapper. * Reorder hammer2_inode_depend() call from after hammer2_igetv() to before it. This is because hammer2_igetv() can temporarily release the inode lock and the dependency code assumes that does not happen. * Cleanup * This code is still not 100% because earlier dependency pairs that wind up on the sideq can be split if an overlapping dependency occurs later that flags PASS2. Summary of changes: sys/vfs/hammer2/hammer2_inode.c | 76 +++++++++++++++++++++++----------------- sys/vfs/hammer2/hammer2_vfsops.c | 27 ++++++-------- sys/vfs/hammer2/hammer2_vnops.c | 14 +++++--- 3 files changed, 64 insertions(+), 53 deletions(-) http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/e49c5ac8b5dc7059612ce9d50f33f45b3bdcacb6 -- DragonFly BSD source repository