summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSage Weil <sage@inktank.com>2013-05-16 13:49:58 -0700
committerSage Weil <sage@inktank.com>2013-06-24 21:21:47 -0700
commit339cafc359f6e02f01bde2df216bbde6f48089ff (patch)
tree2d6ac3b230e8df1cd0e2534d68c2b0ff1dc98ba2
parent809bebb55ac2aececcb04505cf3f879957278af1 (diff)
downloadceph-339cafc359f6e02f01bde2df216bbde6f48089ff.tar.gz
client: do not manually clean up on unlink/rmdir
The reply handler will do this in a safe, ordered fashion. Signed-off-by: Sage Weil <sage@inktank.com>
-rw-r--r--src/client/Client.cc16
1 files changed, 0 insertions, 16 deletions
diff --git a/src/client/Client.cc b/src/client/Client.cc
index f390cbe3105..09d3a95850e 100644
--- a/src/client/Client.cc
+++ b/src/client/Client.cc
@@ -7263,13 +7263,6 @@ int Client::_unlink(Inode *dir, const char *name, int uid, int gid)
req->set_inode(dir);
res = make_request(req, uid, gid);
- if (res == 0) {
- if (dir->dir && dir->dir->dentries.count(name)) {
- Dentry *dn = dir->dir->dentries[name];
- unlink(dn, false, false);
- }
- }
- ldout(cct, 10) << "unlink result is " << res << dendl;
trim_cache();
ldout(cct, 3) << "unlink(" << path << ") = " << res << dendl;
@@ -7322,15 +7315,6 @@ int Client::_rmdir(Inode *dir, const char *name, int uid, int gid)
req->set_inode(in);
res = make_request(req, uid, gid);
- if (res == 0) {
- if (dir->dir && dir->dir->dentries.count(name) ) {
- Dentry *dn = dir->dir->dentries[name];
- if (dn->inode->dir && dn->inode->dir->is_empty() &&
- (dn->inode->dn_set.size() == 1))
- close_dir(dn->inode->dir); // FIXME: maybe i shoudl proactively hose the whole subtree from cache?
- unlink(dn, false, false);
- }
- }
trim_cache();
ldout(cct, 3) << "rmdir(" << path << ") = " << res << dendl;