git: kernel - Change namecache negative caching algorithm
Matthew Dillon
dillon at crater.dragonflybsd.org
Fri Mar 1 22:10:09 PST 2013
commit 6363f2683b09cd5c4cd7b92ec1963bb66da04543
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date: Fri Mar 1 22:02:18 2013 -0800
kernel - Change namecache negative caching algorithm
* Use desiredvnodes instead of numcache (current number of namecache
entries) to scale the number of negative cache entries.
This allows for more negative cache entries and no longer has
degenerate situations when the value of numcache is low.
* namecache entries are still cleaned up in the critical namecache
paths, but vnlru() now also cleans up the namecache when it exceeds
80% of its nominal maximum. The result is that the namecache is
kept under better control AND the cleanups are generally able to be
handled by vnlru() and do not effect the critical paths.
* Huge improvement in poudriere during concurrent python easy_install
execution. The python easy_install performs horribly without sufficient
negative caching. This fixes that.
Reported-by: thesjg
Summary of changes:
sys/kern/vfs_cache.c | 76 ++++++++++++++++++++++++++++++++++++++--------------
sys/kern/vfs_mount.c | 8 +++++-
sys/sys/namecache.h | 2 +-
3 files changed, 64 insertions(+), 22 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/6363f2683b09cd5c4cd7b92ec1963bb66da04543
--
DragonFly BSD source repository
More information about the Commits
mailing list