cvs commit: src/sys/kern vfs_subr.c

Mike Silbersack silby at silby.com
Mon Apr 4 15:48:58 PDT 2005


On Mon, 4 Apr 2005, Jeff Roberson wrote:

> Well, the vnlruproc will try to vgone vnodes when we reach 9/10th of our
> limit.  However, it skips directories that have valid children.  Perhaps
> it shouldn't.  I think that we need to be able to fail from getnewvnode(),
> which we weren't doing before.  We should also try to find more ways to
> deal with resource starvation to make this failure less likely, but there
> will always be cases where it must happen.

If I'm not mistaken, the biggest consumer of vnodes on my (desktop) system 
is locate.updatedb - it takes my numvnodes from ~5000 to ~28000, and 
desiredvnodes is 34177 here.

Is there some sort of MRU scheme that could preemptively free these 
useless vnode allocations?  I know that doesn't address how to handle real 
OOM situations, but perhaps reducing the number of vnodes allocated for 
useless purposes would help the overall situation.

Mike "Silby" Silbersack


More information about the cvs-src mailing list