git: DragonFly_RELEASE_3_0 kernel - Fix mount refs interactions and umount races

Matthew Dillon dillon at crater.dragonflybsd.org
Thu Mar 29 16:07:33 PDT 2012


commit 412f07cde12df9416f3ce8f67b832d9d382375c4
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Thu Mar 22 21:37:25 2012 -0700

    kernel - Fix mount refs interactions and umount races
    
    * It is possible for a umount to race other operations on active mount
      point, causing one or the other to deadlock.
    
    * vfs_busy()/vfs_unbusy() now incr/decr mp->mnt_refs.
    
    * cache_findmount() now increments mp->mnt_refs, and add a new API
      function cache_dropmount() which decrements it.

Summary of changes:
 sys/kern/vfs_cache.c    |    7 +++++++
 sys/kern/vfs_mount.c    |   10 +++++++++-
 sys/kern/vfs_nlookup.c  |    5 ++++-
 sys/kern/vfs_syscalls.c |    8 ++++++--
 sys/sys/namecache.h     |    1 +
 5 files changed, 27 insertions(+), 4 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/412f07cde12df9416f3ce8f67b832d9d382375c4


-- 
DragonFly BSD source repository





More information about the Commits mailing list