diff options
author | dyson <dyson@FreeBSD.org> | 1997-12-29 00:25:11 +0000 |
---|---|---|
committer | dyson <dyson@FreeBSD.org> | 1997-12-29 00:25:11 +0000 |
commit | cd67bb82fe37f70fed8e42c14c818de84029e3c0 (patch) | |
tree | a5d04c1ccd61a23a22dbd5ecd8264d7c3e866024 /sys/kern/vfs_lookup.c | |
parent | f5f5008388092430288cb0018453755be5be7bdb (diff) | |
download | FreeBSD-src-cd67bb82fe37f70fed8e42c14c818de84029e3c0.zip FreeBSD-src-cd67bb82fe37f70fed8e42c14c818de84029e3c0.tar.gz |
Lots of improvements, including restructring the caching and management
of vnodes and objects. There are some metadata performance improvements
that come along with this. There are also a few prototypes added when
the need is noticed. Changes include:
1) Cleaning up vref, vget.
2) Removal of the object cache.
3) Nuke vnode_pager_uncache and friends, because they aren't needed anymore.
4) Correct some missing LK_RETRY's in vn_lock.
5) Correct the page range in the code for msync.
Be gentle, and please give me feedback asap.
Diffstat (limited to 'sys/kern/vfs_lookup.c')
-rw-r--r-- | sys/kern/vfs_lookup.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/sys/kern/vfs_lookup.c b/sys/kern/vfs_lookup.c index fcfd1da..8ceedd4 100644 --- a/sys/kern/vfs_lookup.c +++ b/sys/kern/vfs_lookup.c @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)vfs_lookup.c 8.4 (Berkeley) 2/16/94 - * $Id: vfs_lookup.c,v 1.20 1997/09/21 04:23:01 dyson Exp $ + * $Id: vfs_lookup.c,v 1.21 1997/12/27 02:56:22 bde Exp $ */ #include "opt_ktrace.h" @@ -537,6 +537,9 @@ nextname: } if (!wantparent) vrele(ndp->ni_dvp); + + vfs_object_create(dp, ndp->ni_cnd.cn_proc, ndp->ni_cnd.cn_cred, 1); + if ((cnp->cn_flags & LOCKLEAF) == 0) VOP_UNLOCK(dp, 0, p); return (0); @@ -683,6 +686,9 @@ relookup(dvp, vpp, cnp) if (!wantparent) vrele(dvp); + + vfs_object_create(dp, cnp->cn_proc, cnp->cn_cred, 1); + if ((cnp->cn_flags & LOCKLEAF) == 0) VOP_UNLOCK(dp, 0, p); return (0); |