From owner-freebsd-hackers Tue Apr 17 12:59: 3 2001 Delivered-To: freebsd-hackers@freebsd.org Received: from fw.wintelcom.net (ns1.wintelcom.net [209.1.153.20]) by hub.freebsd.org (Postfix) with ESMTP id 76AF737B43E for ; Tue, 17 Apr 2001 12:59:00 -0700 (PDT) (envelope-from bright@fw.wintelcom.net) Received: (from bright@localhost) by fw.wintelcom.net (8.10.0/8.10.0) id f3HJwcN22192; Tue, 17 Apr 2001 12:58:38 -0700 (PDT) Date: Tue, 17 Apr 2001 12:58:38 -0700 From: Alfred Perlstein To: Poul-Henning Kamp Cc: Matt Dillon , Kirk McKusick , Julian Elischer , Rik van Riel , freebsd-hackers@FreeBSD.ORG, David Xu Subject: Re: vm balance Message-ID: <20010417125838.J976@fw.wintelcom.net> References: <200104171745.f3HHj2K95255@earth.backplane.com> <24891.987530101@critter> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <24891.987530101@critter>; from phk@critter.freebsd.dk on Tue, Apr 17, 2001 at 07:55:01PM +0200 X-all-your-base: are belong to us. Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG * Poul-Henning Kamp [010417 10:56] wrote: > In message <200104171745.f3HHj2K95255@earth.backplane.com>, Matt Dillon writes: > >:> I don't think NFS relies on vnodes never being freed. > >: > >:It does, in some case nfs stashes a vnode pointer and the v_id > >:value away, and some time later tries to use that pair to try to > >:refind the vnode again. If you free vnodes, it will still think > >:the pointer is a vnode and if junk happens to be right it will > >:think it is still a vnode. QED: Bad things (TM) will happen. > >: > >:# cd /sys/nfs > >:# grep v_id * > >:nfs_nqlease.c: vpid = vp->v_id; > >:nfs_nqlease.c: if (vpid == vp->v_id) { > >:nfs_nqlease.c: if (vpid == vp->v_id && > >:nfs_vnops.c: vpid = newvp->v_id; > >:nfs_vnops.c: if (vpid == newvp->v_id) { > >: > >:-- > >:Poul-Henning Kamp | UNIX since Zilog Zeus 3.20 > > > > hahahahahahahaha.. Look at the code more closely. v_id is not > > managed by NFS, it's managed by vfs_cache.c. There's a big XXX > > comment just before cache_purge() that explains it. Believe me, > > NFS is the least of your worries here. > > Matt, you try to free vnodes back to the malloc pool and you will > see what happens OK ? I thought vnodes were in stable storage? Note that I really don't care for using stable storeage as a hack to deal with this sort of thing. -- -Alfred Perlstein - [bright@wintelcom.net|alfred@freebsd.org] Represent yourself, show up at BABUG http://www.babug.org/ To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message