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

cvs commit: src/sys/kern vfs_cache.c vfs_default.c


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Wed, 25 Oct 2006 19:27:19 -0700 (PDT)

dillon      2006/10/25 19:27:19 PDT

DragonFly src repository

  Modified files:
    sys/kern             vfs_cache.c vfs_default.c 
  Log:
  Fix a stack overflow due to recursion.  When the namecache must invalidate
  an entire subtree the depth of the tree can cause the kernel stack to
  overflow.  Implement a simple algorithm which limits the recursion depth.
  When the recursion depth is reached the current namecache node is recorded
  and further recursion does not occur.  The top level then recalls the
  deletion at the recorded node, then restarts.
  
  When removing a file or directory, invalidate all namecache records
  associated with the vnode rather then just the one led to by the current
  path.  Note that RENAME is not fixed and requires a more sophisticated
  solution.  These fixes effect NULLFS.
  
  Revision  Changes    Path
  1.78      +57 -1     src/sys/kern/vfs_cache.c
  1.44      +4 -1      src/sys/kern/vfs_default.c


http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_cache.c.diff?r1=1.77&r2=1.78&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_default.c.diff?r1=1.43&r2=1.44&f=u



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