summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2012-09-26 21:41:05 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2012-09-26 22:20:20 -0400
commit2744c171dbaa0b1ec7639e7d0ff817fba9461a38 (patch)
tree7bf6b1da5b98cd7bd4e95554d442eff52937cabf
parent3a8ca1b6bf7069338e266082479f2f632c29afb3 (diff)
downloadlinux-stable-2744c171dbaa0b1ec7639e7d0ff817fba9461a38.tar.gz
linux-stable-2744c171dbaa0b1ec7639e7d0ff817fba9461a38.tar.bz2
linux-stable-2744c171dbaa0b1ec7639e7d0ff817fba9461a38.zip
ceph: don't abuse d_delete() on failure exits
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
-rw-r--r--fs/ceph/inode.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/ceph/inode.c b/fs/ceph/inode.c
index 4b5762ef7c2b..ba95eea201bf 100644
--- a/fs/ceph/inode.c
+++ b/fs/ceph/inode.c
@@ -1104,7 +1104,7 @@ int ceph_fill_trace(struct super_block *sb, struct ceph_mds_request *req,
pr_err("fill_trace bad get_inode "
"%llx.%llx\n", vino.ino, vino.snap);
err = PTR_ERR(in);
- d_delete(dn);
+ d_drop(dn);
goto done;
}
dn = splice_dentry(dn, in, &have_lease, true);
@@ -1277,7 +1277,7 @@ retry_lookup:
in = ceph_get_inode(parent->d_sb, vino);
if (IS_ERR(in)) {
dout("new_inode badness\n");
- d_delete(dn);
+ d_drop(dn);
dput(dn);
err = PTR_ERR(in);
goto out;