git: DragonFly_RELEASE_5_4 hammer2 - refactor filesystem sync 5/N

Matthew Dillon dillon at crater.dragonflybsd.org
Mon Dec 17 13:55:53 PST 2018


commit e49c5ac8b5dc7059612ce9d50f33f45b3bdcacb6
Author: Matthew Dillon <dillon at 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



More information about the Commits mailing list