From owner-freebsd-hackers Fri Apr 13 2:39:21 2001 Delivered-To: freebsd-hackers@freebsd.org Received: from rina.r.dl.itc.u-tokyo.ac.jp (rina.r.dl.itc.u-tokyo.ac.jp [133.11.199.247]) by hub.freebsd.org (Postfix) with ESMTP id 27F5137B42C for ; Fri, 13 Apr 2001 02:39:19 -0700 (PDT) (envelope-from tanimura@r.dl.itc.u-tokyo.ac.jp) Received: from rina.r.dl.itc.u-tokyo.ac.jp (localhost [127.0.0.1]) by rina.r.dl.itc.u-tokyo.ac.jp (8.11.3+3.4W/3.7W-rina.r-20010412) with ESMTP id f3D9d7Z37169 ; Fri, 13 Apr 2001 18:39:08 +0900 (JST) Message-Id: <200104130939.f3D9d7Z37169@rina.r.dl.itc.u-tokyo.ac.jp> Date: Fri, 13 Apr 2001 18:39:07 +0900 From: Seigo Tanimura To: phk@critter.freebsd.dk Cc: dillon@earth.backplane.com, riel@conectiva.com.br, bsddiy@21cn.com, Tor.Egge@fast.no, freebsd-hackers@FreeBSD.ORG Subject: Re: vm balance In-Reply-To: In your message of "Thu, 12 Apr 2001 22:50:50 +0200" <59188.987108650@critter> References: <200104121757.f3CHvJd20639@earth.backplane.com> <59188.987108650@critter> Cc: Seigo Tanimura User-Agent: Wanderlust/1.1.1 (Purple Rain) SEMI/1.13.7 (Awazu) FLIM/1.13.2 (Kasanui) MULE XEmacs/21.1 (patch 14) (Cuyahoga Valley) (i386--freebsd) Organization: Digital Library Research Division, Information Techinology Centre, The University of Tokyo MIME-Version: 1.0 (generated by SEMI 1.13.7 - "Awazu") Content-Type: text/plain; charset=US-ASCII Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG On Thu, 12 Apr 2001 22:50:50 +0200, Poul-Henning Kamp 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 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message