summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiklos Szeredi2005-07-08 02:57:29 +0200
committerLinus Torvalds2005-07-08 03:23:52 +0200
commit732dbef606f22a23cb3e1029d613977ec645e8ae (patch)
tree513e7230a59a526a09b387b5a2628a2eed3a80bb
parent[PATCH] set mnt_namespace in the correct place (diff)
downloadkernel-qcow2-linux-732dbef606f22a23cb3e1029d613977ec645e8ae.tar.gz
kernel-qcow2-linux-732dbef606f22a23cb3e1029d613977ec645e8ae.tar.xz
kernel-qcow2-linux-732dbef606f22a23cb3e1029d613977ec645e8ae.zip
[PATCH] dcookies.c: use proper refcounting functions
Dcookies shouldn't play with the internals of dentry and vfsmnt refcounting. It defeats grepping, and is prone to break if implementation details change. In addition the function doesn't even seem to be performance critical: it calls kmem_cache_alloc(). Signed-off-by: Miklos Szeredi <miklos@szeredi.hu> Acked-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--fs/dcookies.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/fs/dcookies.c b/fs/dcookies.c
index 581aac959cd3..02aa0ddc582a 100644
--- a/fs/dcookies.c
+++ b/fs/dcookies.c
@@ -94,12 +94,10 @@ static struct dcookie_struct * alloc_dcookie(struct dentry * dentry,
if (!dcs)
return NULL;
- atomic_inc(&dentry->d_count);
- atomic_inc(&vfsmnt->mnt_count);
dentry->d_cookie = dcs;
- dcs->dentry = dentry;
- dcs->vfsmnt = vfsmnt;
+ dcs->dentry = dget(dentry);
+ dcs->vfsmnt = mntget(vfsmnt);
hash_dcookie(dcs);
return dcs;