commit e89bd68487ad1e84651531db1eb4f1fa3b7dd4e0 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/e89bd68487ad1e84651531db1eb4f1fa3b7dd4e0 -- DragonFly BSD source repository