This patch replaces manual incrementing of refcounters on dentry/mnt in fs/dcookie.c with calls to dget()/mntget().
Noticed this when tried to change logic in dget() and it began to oops.

Signed-Off-By: Alexey Kuznetsov <[EMAIL PROTECTED]>
Signed-Off-By: Pavel Emelianov <[EMAIL PROTECTED]>
Signed-Off-By: Kirill Korotaev <[EMAIL PROTECTED]>

Kirill
--- linux-2.6.8.1-t032/fs/dcookies.c.dget       2004-08-14 14:54:46.000000000 
+0400
+++ linux-2.6.8.1-t032/fs/dcookies.c    2005-08-23 14:09:00.000000000 +0400
@@ -93,12 +93,10 @@ static struct dcookie_struct * alloc_dco
        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;

Reply via email to