DragonFly BSD
DragonFly commits List (threaded) for 2010-02
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

git: kernel - TMPFS - Bug fixing pass - directory hierarchy


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Sat, 13 Feb 2010 00:01:57 -0800 (PST)

commit 0786baf1fc52cfb8dfbb4703b677a498aa96bfe0
Author: Matthew Dillon <dillon@apollo.backplane.com>
Date:   Fri Feb 12 22:16:35 2010 -0800

    kernel - TMPFS - Bug fixing pass - directory hierarchy
    
    * Adjust parent linkages for directories.  The root node's parent
      linkage is now set to NULL instead of a self-reference.  The
      root node is given just one extra link count to hold it instead
      of two.
    
    * List operations on tmpfs_mount->tn_entries are now protected
      by TMPFS_LOCK.
    
    * Hold a node locked when calling tmpfs_free_node().  The function
      will eat the lock.
    
    * Do a better job cleaning up dirent and node structures when freeing.
      The ctor function is only called on backing store allocations, not
      on frontend objcache allocations.
    
      Misinitialized previously freed structures created some amount of
      havoc.
    
    * Remove unnecessary critical sections.
    
    * Refactor the umount code to properly clean up all nodes, and in
      the correct order.  Remove tmpfs_free_node() hacks that tried
      to allow out-of-order removal.

Summary of changes:
 sys/vfs/tmpfs/tmpfs.h        |    4 +-
 sys/vfs/tmpfs/tmpfs_subr.c   |  100 +++++++++++++++++++++++++++---------------
 sys/vfs/tmpfs/tmpfs_vfsops.c |   93 +++++++++++++++++++++++++++-----------
 sys/vfs/tmpfs/tmpfs_vnops.c  |   19 +++++---
 4 files changed, 145 insertions(+), 71 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/0786baf1fc52cfb8dfbb4703b677a498aa96bfe0


-- 
DragonFly BSD source repository



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]