ceph: add new MDS req field to hold delegated inode number

Add new request field to hold the delegated inode number. Encode that
into the message when it's set.

Signed-off-by: Jeff Layton <jlayton@kernel.org>
Reviewed-by: "Yan, Zheng" <zyan@redhat.com>
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
This commit is contained in:
Jeff Layton 2020-01-13 13:04:08 -05:00 committed by Ilya Dryomov
parent d484648787
commit 6deb8008a8
2 changed files with 2 additions and 2 deletions

View File

@ -2477,7 +2477,7 @@ static struct ceph_msg *create_request_message(struct ceph_mds_client *mdsc,
head->op = cpu_to_le32(req->r_op); head->op = cpu_to_le32(req->r_op);
head->caller_uid = cpu_to_le32(from_kuid(&init_user_ns, req->r_uid)); head->caller_uid = cpu_to_le32(from_kuid(&init_user_ns, req->r_uid));
head->caller_gid = cpu_to_le32(from_kgid(&init_user_ns, req->r_gid)); head->caller_gid = cpu_to_le32(from_kgid(&init_user_ns, req->r_gid));
head->ino = 0; head->ino = cpu_to_le64(req->r_deleg_ino);
head->args = req->r_args; head->args = req->r_args;
ceph_encode_filepath(&p, end, ino1, path1); ceph_encode_filepath(&p, end, ino1, path1);
@ -2638,7 +2638,6 @@ static int __prepare_send_request(struct ceph_mds_client *mdsc,
rhead->flags = cpu_to_le32(flags); rhead->flags = cpu_to_le32(flags);
rhead->num_fwd = req->r_num_fwd; rhead->num_fwd = req->r_num_fwd;
rhead->num_retry = req->r_attempts - 1; rhead->num_retry = req->r_attempts - 1;
rhead->ino = 0;
dout(" r_parent = %p\n", req->r_parent); dout(" r_parent = %p\n", req->r_parent);
return 0; return 0;

View File

@ -313,6 +313,7 @@ struct ceph_mds_request {
int r_num_fwd; /* number of forward attempts */ int r_num_fwd; /* number of forward attempts */
int r_resend_mds; /* mds to resend to next, if any*/ int r_resend_mds; /* mds to resend to next, if any*/
u32 r_sent_on_mseq; /* cap mseq request was sent at*/ u32 r_sent_on_mseq; /* cap mseq request was sent at*/
u64 r_deleg_ino;
struct list_head r_wait; struct list_head r_wait;
struct completion r_completion; struct completion r_completion;