From: Sage Weil Date: Thu, 22 Jul 2010 21:11:56 +0000 (-0700) Subject: ceph: fix leak of dentry in ceph_init_dentry() error path X-Git-Tag: v2.6.35~16^2~3 X-Git-Url: http://bbs.cooldavid.org/git/?a=commitdiff_plain;h=8c696737aa61316a252c4514d09dd163f1464d33;p=net-next-2.6.git ceph: fix leak of dentry in ceph_init_dentry() error path If we fail to allocate a ceph_dentry_info, don't leak the dn reference. Signed-off-by: Sage Weil --- diff --git a/fs/ceph/inode.c b/fs/ceph/inode.c index 8f9b9fe8ef9..3582e79f46e 100644 --- a/fs/ceph/inode.c +++ b/fs/ceph/inode.c @@ -1199,8 +1199,10 @@ retry_lookup: goto out; } err = ceph_init_dentry(dn); - if (err < 0) + if (err < 0) { + dput(dn); goto out; + } } else if (dn->d_inode && (ceph_ino(dn->d_inode) != vino.ino || ceph_snap(dn->d_inode) != vino.snap)) {