Date: Fri, 13 Apr 2001 18:39:07 +0900 From: Seigo Tanimura <tanimura@r.dl.itc.u-tokyo.ac.jp> To: phk@critter.freebsd.dk Cc: Seigo Tanimura <tanimura@r.dl.itc.u-tokyo.ac.jp> Subject: Re: vm balance Message-ID: <200104130939.f3D9d7Z37169@rina.r.dl.itc.u-tokyo.ac.jp> In-Reply-To: In your message of "Thu, 12 Apr 2001 22:50:50 %2B0200" <59188.987108650@critter> References: <200104121757.f3CHvJd20639@earth.backplane.com> <59188.987108650@critter>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 12 Apr 2001 22:50:50 +0200, Poul-Henning Kamp <phk@critter.freebsd.dk> said: Poul-Henning> We keep namecache entries around as long as we can use them, and that Poul-Henning> generally means that recreating them is a rather expensive operation, Poul-Henning> involving creation of vnode and very likely a vm object again. Holding a namecache entry forever until its vnode is reused results in disaster when a huge number of files are accessed concurrently, causing active vnodes to eat up all of memory. This beast killed a box of mine with 3GB of memory and 200GB of a RAID0 disk array serving about 300,000 files by cvsupd and making the world a few months ago, when the number of the vnodes reached around 400,000 to make all of the processes wait for a free vnode. With a help by tegge, the box is now reclaiming directory vnodes when few free vnodes are available. Only directory vnodes holding no child directory vnodes held in v_cache_src are recycled, so that directory vnodes near the root of the filesystem hierarchy remain in namecache and directory vnodes are not reclaimed in cascade. The number of vnodes in the box is now about 135,000, staying quite steadily. Name'cache' is the place to hold vnodes for future use which may *not* come, hence vnodes held in namecache should be reclaimed in case of critical vnode shortage. -- Seigo Tanimura <tanimura@r.dl.itc.u-tokyo.ac.jp> <tanimura@FreeBSD.org> To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200104130939.f3D9d7Z37169>