git: kernel - Fix two rare namecache bugs
Matthew Dillon
dillon at crater.dragonflybsd.org
Sun Feb 11 08:57:22 PST 2018
commit 5ecd24e2200bb7738582682e773ea5ec189d5e12
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date: Sat Feb 10 22:11:18 2018 -0800
kernel - Fix two rare namecache bugs
* Fix calculations which use the vfscache_negs global. This global
is somewhat heuristical and can values which are a bit off, including
0. Copy to a local and limit the range, fixing a divide-by-zero
bug and a negative-number handling bug.
* Fix a bug in the handling of a race in _cache_cleanneg(). We were
unlocking the ncp but failing to drop it, leaving it with a ref.
The accumulating namecache records prevent umount from succeeding.
This race can only occur regularly when kern.maxvnodes is set to
a low value.
Summary of changes:
sys/kern/vfs_cache.c | 17 +++++++++++++++--
1 file changed, 15 insertions(+), 2 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/5ecd24e2200bb7738582682e773ea5ec189d5e12
--
DragonFly BSD source repository
More information about the Commits
mailing list