git: kernel - Fix hammer recovery crash (due to recent syncer work)

Matthew Dillon dillon at crater.dragonflybsd.org
Mon Oct 14 16:42:42 PDT 2013


commit cf6a53ca558fa4bbc637ee3949e2436254bcf4c2
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Mon Oct 14 16:41:03 2013 -0700

    kernel - Fix hammer recovery crash (due to recent syncer work)
    
    * Unconditionally create a syncer thread for each mount.  This way we can
      create the thread prior to calling VFS_MOUNT.
    
    * hammer(1) needs to acquire vnodes and potentially issue vn_rdwr()'s during
      mount for recovery purposes.  This syncer thread is expected to already
      exist.  (and it does now).
    
    * Remove the default syncer thread.
    
    * rewrite speedup_syncer().

Summary of changes:
 sys/kern/vfs_init.c              |   3 +-
 sys/kern/vfs_mount.c             |   2 +-
 sys/kern/vfs_sync.c              | 141 +++++++++++----------------------------
 sys/kern/vfs_vfsops.c            |   6 +-
 sys/sys/vnode.h                  |   3 +-
 sys/vfs/hammer/hammer_vfsops.c   |   2 +-
 sys/vfs/hammer2/hammer2_chain.c  |   4 +-
 sys/vfs/hammer2/hammer2_vfsops.c |   2 +-
 sys/vfs/nfs/nfs_vfsops.c         |   2 +-
 sys/vfs/nullfs/null_vfsops.c     |   5 ++
 sys/vfs/tmpfs/tmpfs_vfsops.c     |   2 +-
 sys/vfs/ufs/ffs_softdep.c        |  14 ++--
 sys/vm/vm_pageout.c              |   2 +-
 13 files changed, 65 insertions(+), 123 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/cf6a53ca558fa4bbc637ee3949e2436254bcf4c2


-- 
DragonFly BSD source repository


More information about the Commits mailing list