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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.