Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 4 Apr 2005 17:48:47 -0500 (CDT)
From:      Mike Silbersack <silby@silby.com>
To:        Jeff Roberson <jroberson@chesapeake.net>
Cc:        src-committers@FreeBSD.org
Subject:   Re: cvs commit: src/sys/kern vfs_subr.c
Message-ID:  <20050404174244.W922@odysseus.silby.com>
In-Reply-To: <20050404173257.R54623@mail.chesapeake.net>
References:  <200504041143.j34Bhjar031386@repoman.freebsd.org> <20050404173257.R54623@mail.chesapeake.net>

index | next in thread | previous in thread | raw e-mail


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


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050404174244.W922>