From owner-freebsd-current Tue Mar 7 00:47:26 1995 Return-Path: current-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id AAA09150 for current-outgoing; Tue, 7 Mar 1995 00:47:26 -0800 Received: from pelican.com (pelican.com [134.24.4.62]) by freefall.cdrom.com (8.6.10/8.6.6) with SMTP id AAA09144 for ; Tue, 7 Mar 1995 00:47:23 -0800 Received: by pelican.com (Smail3.1.28.1 #5) id m0rluuy-000K2tC; Tue, 7 Mar 95 00:47 WET Message-Id: Date: Tue, 7 Mar 95 00:47 WET From: pete@pelican.com (Pete Carah) To: current@FreeBSD.org Subject: Re: the chatterbug categorized In-Reply-To: <199503070721.XAA24911@ref.tfs.com> Organization: Pelican Consulting Sender: current-owner@FreeBSD.org Precedence: bulk In article <199503070721.XAA24911@ref.tfs.com> phk writes: >I belive that David and I have understood the chatterbug, now we just >need to find it and fix it. >What happens is that some vnodes are not properly freed when the vm_object >is freed, this has two effects: one is that the list of free vnodes are >too short to make the name-cache efficient (the chatter) and the other >is that the system will continue to allocate more vnodes, (the gradual >loss of available memory) Sounds reasonable. I don't see the loss of memory offhand but haven't looked at the beginning of a make world. I do know that swap usage does NOT increase through a make world and there is still a bunch free. >Now to isolate it, we need to know when it happens, I can reproduce it here >with: > cd /usr/src/release > make release CHROOTDIR=<500Mb space> >but it takes long time. >If any of you have any idea about any specific action or program that >makes this happen, we'd like to know. The make depend phase of make world does it very quickly. mkdep has to run; just make doesn't do it. You can probably do a "find . -name .depend -print | xargs rm -f" then a make depend, in a directory like src/usr.bin rather than using the beginning of the real make, to make things happen faster. Once my make world has finished (tomorrow morning) I can reboot and do this with your following program. Could do vmstat -s -w 20 also through this; there isn't a mode to print the diffs at each interval like the SGI osview has, is there? (I suppose I could put it in; it couldn't be all that hard.) Actually could integrate your short pgm into vmstat for this debugging; then it could be tracked better. -- Pete