git: devfs - Fix a few more issues (2)

Matthew Dillon dillon at crater.dragonflybsd.org
Sun Mar 18 20:00:35 PDT 2018


commit 770f82792a81e27168fe4ed82905e567944bf0bb
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Sun Mar 18 19:57:19 2018 -0700

    devfs - Fix a few more issues (2)
    
    * The devfs_freep() issues were more extensive then originally
      determined.  There was another race, primarily due to some
      vnodes (related to unlinked devfs nodes) getting torn down
      before aliases during umount.
    
    * Add another flag and adjust the code to not free the node
      structure until all link references (nlinks) have gone
      away.
    
    * Also refactor locking and sequencing to further bullet-proof
      vnode reclaims vs devfs_freep()'s.

Summary of changes:
 sys/sys/devfs.h             |  5 ++-
 sys/vfs/devfs/devfs_core.c  | 95 ++++++++++++++++++++++++++++++++-------------
 sys/vfs/devfs/devfs_vnops.c | 10 +++--
 3 files changed, 76 insertions(+), 34 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/770f82792a81e27168fe4ed82905e567944bf0bb


-- 
DragonFly BSD source repository



More information about the Commits mailing list