summaryrefslogtreecommitdiffstats
path: root/fs/ceph/mds_client.h
diff options
context:
space:
mode:
authorSage Weil <sage@newdream.net>2011-07-26 11:31:14 -0700
committerSage Weil <sage@newdream.net>2011-07-26 11:31:14 -0700
commit41b02e1f9bb87b07d792b64aaeb7af3d00d69cd2 (patch)
tree87c9524ff96cbff2ff29d659cbefd516b553ca1f /fs/ceph/mds_client.h
parent4f1772645296a230e04f5c53e79cfb6f841ce634 (diff)
downloadlinux-41b02e1f9bb87b07d792b64aaeb7af3d00d69cd2.tar.gz
linux-41b02e1f9bb87b07d792b64aaeb7af3d00d69cd2.tar.bz2
linux-41b02e1f9bb87b07d792b64aaeb7af3d00d69cd2.zip
ceph: explicitly reference rename old_dentry parent dir in request
We carry a pin on the parent directory for the rename source and dest dentries. For the source it's r_locked_dir; we need to explicitly reference the old_dentry parent as well, since the dentry's d_parent may change between when the request was created and pinned and when it is freed. Reviewed-by: Yehuda Sadeh <yehuda@hq.newdream.net> Signed-off-by: Sage Weil <sage@newdream.net>
Diffstat (limited to 'fs/ceph/mds_client.h')
-rw-r--r--fs/ceph/mds_client.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/ceph/mds_client.h b/fs/ceph/mds_client.h
index 8a40f0636ba9..4bb239921dbd 100644
--- a/fs/ceph/mds_client.h
+++ b/fs/ceph/mds_client.h
@@ -171,6 +171,7 @@ struct ceph_mds_request {
struct inode *r_inode; /* arg1 */
struct dentry *r_dentry; /* arg1 */
struct dentry *r_old_dentry; /* arg2: rename from or link from */
+ struct inode *r_old_dentry_dir; /* arg2: old dentry's parent dir */
char *r_path1, *r_path2;
struct ceph_vino r_ino1, r_ino2;