From owner-cvs-all Sun Sep 30 21:33:39 2001 Delivered-To: cvs-all@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 6204337B40C; Sun, 30 Sep 2001 21:33:35 -0700 (PDT) Received: (from dillon@localhost) by freefall.freebsd.org (8.11.4/8.11.4) id f914XZd11860; Sun, 30 Sep 2001 21:33:35 -0700 (PDT) (envelope-from dillon) Message-Id: <200110010433.f914XZd11860@freefall.freebsd.org> From: Matt Dillon Date: Sun, 30 Sep 2001 21:33:35 -0700 (PDT) To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/kern vfs_cache.c vfs_subr.c src/sys/sys vnode.h X-FreeBSD-CVS-Branch: HEAD Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG dillon 2001/09/30 21:33:35 PDT Modified files: sys/kern vfs_cache.c vfs_subr.c sys/sys vnode.h Log: After extensive testing it has been determined that adding complexity to avoid removing higher level directory vnodes from the namecache has no perceivable effect and will be removed. This is especially true when vmiodirenable is turned on, which it is by default now. ( vmiodirenable makes a huge difference in directory caching ). The vfs.vmiodirenable and vfs.nameileafonly sysctls have been left in to allow further testing, but I expect to rip out vfs.nameileafonly soon too. I have also determined through testing that the real problem with numvnodes getting too large is due to the VM Page cache preventing the vnode from being reclaimed. The directory stuff made only a tiny dent relative to Poul's original code, enough so that some tests succeeded. But tests with several million small files show that the bigger problem is the VM Page cache. This will have to be addressed by a future commit. MFC after: 3 days Revision Changes Path 1.62 +32 -1 src/sys/kern/vfs_cache.c 1.320 +70 -31 src/sys/kern/vfs_subr.c 1.158 +2 -2 src/sys/sys/vnode.h To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message