ceph: voluntarily drop Fx cap for readdir request
"Linux Kernel Mailing List" <[email protected]>
| Newsgroups | gmane.linux.kernel.commits.head |
|---|---|
| Message-ID | <[email protected]> |
Web: https://git.kernel.org/torvalds/c/87c91a965aa28809888cbae3b2de35a486ed7107 Commit: 87c91a965aa28809888cbae3b2de35a486ed7107 Parent: be70489eff41a84f26b1d772b595cc043e0edeb6 Refname: refs/heads/master Author: Yan, Zheng <[email protected]> AuthorDate: Thu Nov 23 18:28:16 2017 +0800 Committer: Ilya Dryomov <[email protected]> CommitDate: Mon Jan 29 18:36:05 2018 +0100 ceph: voluntarily drop Fx cap for readdir request MDS need to rdlock directory inode's filelock when handling readdir request. Voluntarily dropping CEPH_CAP_AUTH_EXCL avoids a cap revoke message. Signed-off-by: "Yan, Zheng" <[email protected]> Signed-off-by: Ilya Dryomov <[email protected]> --- fs/ceph/dir.c | 1 + 1 file changed, 1 insertion(+) diff --git a/fs/ceph/dir.c b/fs/ceph/dir.c index aa2618f12cb7..9fde02cd5568 100644 --- a/fs/ceph/dir.c +++ b/fs/ceph/dir.c @@ -381,6 +381,7 @@ more: if (op == CEPH_MDS_OP_READDIR) { req->r_direct_hash = ceph_frag_value(frag); __set_bit(CEPH_MDS_R_DIRECT_IS_HASH, &req->r_req_flags); + req->r_inode_drop = CEPH_CAP_FILE_EXCL; } if (fi->last_name) { req->r_path2 = kstrdup(fi->last_name, GFP_KERNEL); -- To unsubscribe from this list: send the line "unsubscribe git-commits-head" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html