Subject: Re: Simple thought...
To: NetBSD-current Discussion List <current-users@NetBSD.ORG>
From: Bill Studenmund <email@example.com>
Date: 08/12/2002 11:20:19
Didn't see this one in a backlog of mail...
On Fri, 14 Jun 2002, Greg A. Woods wrote:
> [ On Tuesday, June 11, 2002 at 17:22:13 (-0700), Bill Studenmund wrote: ]
> > Subject: Re: Simple thought...
> > So there are three caches going on. There's the data describing the
> > directory which lives in the buffer cache (the directory's file contents
> > for ufs), there are the struct vodes built when you access a file in a
> > directory, and there are the FS-specific bits also built when you access
> > a file in a directory.
> So, are the FS-specific portions of the vnode included in the vnode
> cache, or not? I thought it was, however you imply it is not by saying
> there are three caches. I don't see any tunable (in options(8) or
> sysctl(3)) for this third cache, nor am I familiar enough with the vnode
> code to find where it might be. If a third cache exists for the FS-bits
> of the vnode then is it not sized with NVNODE (and kern.maxvnodes)?
There are three caches, and the fs-specific cache isn't tunable. However,
it's not that bad. Entries only exist in the fs-specific cache if the
corresponding vnode exists. So whenever a vnode is re-used, the file
system gets told to remove its fs-specific part.