diff options
author | Seigo Tanimura <tanimura@FreeBSD.org> | 2001-04-18 11:19:50 +0000 |
---|---|---|
committer | Seigo Tanimura <tanimura@FreeBSD.org> | 2001-04-18 11:19:50 +0000 |
commit | 759cb26335a04d08dd3df14deac198043f5daf22 (patch) | |
tree | 2922b41a593148ad9217fb4938a14c6eabf8698a /sys/sys/vnode.h | |
parent | 5c76ec115ff51c1f6ba7a68ba4e931d1826a6ebb (diff) | |
download | src-759cb26335a04d08dd3df14deac198043f5daf22.tar.gz src-759cb26335a04d08dd3df14deac198043f5daf22.zip |
Reclaim directory vnodes held in namecache if few free vnodes are
available.
Only directory vnodes holding no child directory vnodes held in
v_cache_src are recycled, so that directory vnodes near the root of
the filesystem hierarchy remain in namecache and directory vnodes are
not reclaimed in cascade.
The period of vnode reclaiming attempt and the number of vnodes
attempted to reclaim can be tuned via sysctl(2).
Suggested by: tegge
Approved by: phk
Notes
Notes:
svn path=/head/; revision=75654
Diffstat (limited to 'sys/sys/vnode.h')
-rw-r--r-- | sys/sys/vnode.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/sys/vnode.h b/sys/sys/vnode.h index 760fad75124b..719d1d3af99f 100644 --- a/sys/sys/vnode.h +++ b/sys/sys/vnode.h @@ -552,6 +552,7 @@ int cache_lookup __P((struct vnode *dvp, struct vnode **vpp, struct componentname *cnp)); void cache_purge __P((struct vnode *vp)); void cache_purgevfs __P((struct mount *mp)); +void cache_purgeleafdirs __P((int ndir)); void cvtstat __P((struct stat *st, struct ostat *ost)); void cvtnstat __P((struct stat *sb, struct nstat *nsb)); int getnewvnode __P((enum vtagtype tag, |