summaryrefslogtreecommitdiffstats
path: root/sys/fs
diff options
context:
space:
mode:
authorphk <phk@FreeBSD.org>1999-10-03 12:18:29 +0000
committerphk <phk@FreeBSD.org>1999-10-03 12:18:29 +0000
commit322edeeaa9db24f692a897cb4796b2fb096d1a2c (patch)
treeec3f444d06a5625603881122124496a55eaa80cb /sys/fs
parent0a9033ff881571171d2114a65ff650b7d69e1392 (diff)
downloadFreeBSD-src-322edeeaa9db24f692a897cb4796b2fb096d1a2c.zip
FreeBSD-src-322edeeaa9db24f692a897cb4796b2fb096d1a2c.tar.gz
Before we start to mess with the VFS name-cache clean things up a little bit:
Isolate the namecache in its own file, and give it a dedicated malloc type.
Diffstat (limited to 'sys/fs')
-rw-r--r--sys/fs/nwfs/nwfs_io.c7
-rw-r--r--sys/fs/unionfs/union.h1
-rw-r--r--sys/fs/unionfs/union_subr.c5
3 files changed, 1 insertions, 12 deletions
diff --git a/sys/fs/nwfs/nwfs_io.c b/sys/fs/nwfs/nwfs_io.c
index 21339b3..84f702d 100644
--- a/sys/fs/nwfs/nwfs_io.c
+++ b/sys/fs/nwfs/nwfs_io.c
@@ -86,7 +86,7 @@ extern int nwfs_pbuf_freecnt;
static int
nwfs_readvdir(struct vnode *vp, struct uio *uio, struct ucred *cred) {
struct nwmount *nmp = VTONWFS(vp);
- int error, count, i, len;
+ int error, count, i;
struct dirent dp;
struct nwnode *np = VTONW(vp);
struct nw_entry_info fattr;
@@ -94,7 +94,6 @@ nwfs_readvdir(struct vnode *vp, struct uio *uio, struct ucred *cred) {
struct nameidata nami, *ndp = &nami;
struct componentname *cnp = &ndp->ni_cnd;
ncpfid fid;
- u_char *cp;
np = VTONW(vp);
NCPVNDEBUG("dirname='%s'\n",np->n_name);
@@ -149,11 +148,7 @@ nwfs_readvdir(struct vnode *vp, struct uio *uio, struct ucred *cred) {
if (!error) {
VTONW(newvp)->n_ctime = VTONW(newvp)->n_vattr.va_ctime.tv_sec;
cnp->cn_nameptr = dp.d_name;
- len = cnp->cn_namelen = dp.d_namlen;
ndp->ni_vp = newvp;
- cnp->cn_hash = 0;
- for (cp = cnp->cn_nameptr; len; len--, cp++)
- cnp->cn_hash += *cp;
cache_enter(ndp->ni_dvp, ndp->ni_vp, cnp);
vput(newvp);
} else
diff --git a/sys/fs/unionfs/union.h b/sys/fs/unionfs/union.h
index 02a8971..3fb0b6e 100644
--- a/sys/fs/unionfs/union.h
+++ b/sys/fs/unionfs/union.h
@@ -86,7 +86,6 @@ struct union_node {
struct vnode *un_dirvp; /* Parent dir of uppervp */
struct vnode *un_pvp; /* Parent vnode */
char *un_path; /* saved component name */
- int un_hash; /* saved un_path hash value */
int un_openl; /* # of opens on lowervp */
int un_exclcnt; /* exclusive count */
unsigned int un_flags;
diff --git a/sys/fs/unionfs/union_subr.c b/sys/fs/unionfs/union_subr.c
index 7c3dbb9..d7caf10 100644
--- a/sys/fs/unionfs/union_subr.c
+++ b/sys/fs/unionfs/union_subr.c
@@ -500,7 +500,6 @@ loop:
if (lowervp != un->un_lowervp) {
union_newlower(un, lowervp);
if (cnp && (lowervp != NULLVP)) {
- un->un_hash = cnp->cn_hash;
un->un_path = malloc(cnp->cn_namelen+1,
M_TEMP, M_WAITOK);
bcopy(cnp->cn_nameptr, un->un_path,
@@ -584,12 +583,10 @@ loop:
un->un_openl = 0;
if (cnp && (lowervp != NULLVP)) {
- un->un_hash = cnp->cn_hash;
un->un_path = malloc(cnp->cn_namelen+1, M_TEMP, M_WAITOK);
bcopy(cnp->cn_nameptr, un->un_path, cnp->cn_namelen);
un->un_path[cnp->cn_namelen] = '\0';
} else {
- un->un_hash = 0;
un->un_path = 0;
un->un_dirvp = NULL;
}
@@ -865,7 +862,6 @@ union_relookup(um, dvp, vpp, cnp, cn, path, pathlen)
else
cn->cn_cred = um->um_cred;
cn->cn_nameptr = cn->cn_pnbuf;
- cn->cn_hash = cnp->cn_hash;
cn->cn_consume = cnp->cn_consume;
VREF(dvp);
@@ -1045,7 +1041,6 @@ union_vn_create(vpp, un, p)
cn.cn_proc = p;
cn.cn_cred = p->p_ucred;
cn.cn_nameptr = cn.cn_pnbuf;
- cn.cn_hash = un->un_hash;
cn.cn_consume = 0;
/*
OpenPOWER on IntegriCloud