Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 17 Apr 2001 12:58:38 -0700
From:      Alfred Perlstein <bright@wintelcom.net>
To:        Poul-Henning Kamp <phk@critter.freebsd.dk>
Cc:        Matt Dillon <dillon@earth.backplane.com>, Kirk McKusick <mckusick@mckusick.com>, Julian Elischer <julian@elischer.org>, Rik van Riel <riel@conectiva.com.br>, freebsd-hackers@FreeBSD.ORG, David Xu <bsddiy@21cn.com>
Subject:   Re: vm balance
Message-ID:  <20010417125838.J976@fw.wintelcom.net>
In-Reply-To: <24891.987530101@critter>; from phk@critter.freebsd.dk on Tue, Apr 17, 2001 at 07:55:01PM %2B0200
References:  <200104171745.f3HHj2K95255@earth.backplane.com> <24891.987530101@critter>

next in thread | previous in thread | raw e-mail | index | archive | help
* Poul-Henning Kamp <phk@critter.freebsd.dk> [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




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010417125838.J976>