diff options
| author | Sage Weil <sage@newdream.net> | 2011-05-27 16:42:15 -0400 |
|---|---|---|
| committer | Al Viro <viro@zeniv.linux.org.uk> | 2011-05-28 01:02:53 -0400 |
| commit | 526e7ce5528c8addcf154acec41b615f71dce7e1 (patch) | |
| tree | d3cadaaa5dec5b7c9d851d59b6ed595c1ca5eb7e | |
| parent | 42b850b2806f8f55f5c3a0e3c78af738d5054fdc (diff) | |
fuse: remove unnecessary dentry_unhash on rmdir, dir rename
Fuse has no problems with references to unlinked directories.
CC: Miklos Szeredi <miklos@szeredi.hu>
CC: fuse-devel@lists.sourceforge.net
Signed-off-by: Sage Weil <sage@newdream.net>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| -rw-r--r-- | fs/fuse/dir.c | 5 |
1 files changed, 0 insertions, 5 deletions
diff --git a/fs/fuse/dir.c b/fs/fuse/dir.c index 0d0e3faddcfa..d50160714595 100644 --- a/fs/fuse/dir.c +++ b/fs/fuse/dir.c | |||
| @@ -667,8 +667,6 @@ static int fuse_rmdir(struct inode *dir, struct dentry *entry) | |||
| 667 | if (IS_ERR(req)) | 667 | if (IS_ERR(req)) |
| 668 | return PTR_ERR(req); | 668 | return PTR_ERR(req); |
| 669 | 669 | ||
| 670 | dentry_unhash(entry); | ||
| 671 | |||
| 672 | req->in.h.opcode = FUSE_RMDIR; | 670 | req->in.h.opcode = FUSE_RMDIR; |
| 673 | req->in.h.nodeid = get_node_id(dir); | 671 | req->in.h.nodeid = get_node_id(dir); |
| 674 | req->in.numargs = 1; | 672 | req->in.numargs = 1; |
| @@ -694,9 +692,6 @@ static int fuse_rename(struct inode *olddir, struct dentry *oldent, | |||
| 694 | struct fuse_conn *fc = get_fuse_conn(olddir); | 692 | struct fuse_conn *fc = get_fuse_conn(olddir); |
| 695 | struct fuse_req *req = fuse_get_req(fc); | 693 | struct fuse_req *req = fuse_get_req(fc); |
| 696 | 694 | ||
| 697 | if (newent->d_inode && S_ISDIR(newent->d_inode->i_mode)) | ||
| 698 | dentry_unhash(newent); | ||
| 699 | |||
| 700 | if (IS_ERR(req)) | 695 | if (IS_ERR(req)) |
| 701 | return PTR_ERR(req); | 696 | return PTR_ERR(req); |
| 702 | 697 | ||
