From owner-freebsd-stable Tue Jan 15 17: 1:11 2002 Delivered-To: freebsd-stable@freebsd.org Received: from apollo.backplane.com (apollo.backplane.com [216.240.41.2]) by hub.freebsd.org (Postfix) with ESMTP id E2E4737B405 for ; Tue, 15 Jan 2002 17:01:08 -0800 (PST) Received: (from dillon@localhost) by apollo.backplane.com (8.11.6/8.9.1) id g0G117r64693; Tue, 15 Jan 2002 17:01:07 -0800 (PST) (envelope-from dillon) Date: Tue, 15 Jan 2002 17:01:07 -0800 (PST) From: Matthew Dillon Message-Id: <200201160101.g0G117r64693@apollo.backplane.com> To: Andrew Lankford Cc: stable@FreeBSD.ORG Subject: Re:what's vnlru? References: <200201151618468.SM01176@141.com> Sender: owner-freebsd-stable@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG vnlru is responsible for flushing and freeing vnodes when you hit the kern.maxvnodes limit. The history of this is: 4.4 and earlier vnodes were only freed if they had no cached pages. This could lead to a vnode blowout on machines with large amounts of ram accessing lots of small files. (the kern.maxvnodes limit was essentially ignored) 4.4-stable I introduced code to flush/reuse vnodes on the fly, but this lead to possible locking deadlocks. 4.5-* Peter introduced a separate kernel thread to deal with vnode flushing issues, 'vnlru', in order to fix the possible locking deadlocks. The on-the-fly code was changed to only be called from the kernel thread. This kernel thread will generally not be very active, even on a heavily loaded system. You have to have a lot of ram and be accessing tens of thousands of tiny files to activate the thread. -Matt Matthew Dillon :My assumption is that it has something to do with ipfw. : :> :>Any ideas? :> :>$ps ax|head :> PID TT STAT TIME COMMAND :> 0 ?? DLs 0:00.00 (swapper) :> 1 ?? ILs 0:00.01 /sbin/init -- :> 2 ?? DL 0:00.00 (pagedaemon) :> 3 ?? DL 0:00.00 (vmdaemon) :> 4 ?? DL 0:00.00 (bufdaemon) :> 5 ?? DL 0:00.00 (vnlru) : To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message