summaryrefslogtreecommitdiffstats
path: root/fs/ceph/super.h
diff options
context:
space:
mode:
authorXiubo Li <xiubli@redhat.com>2022-06-10 09:53:21 +0800
committerIlya Dryomov <idryomov@gmail.com>2022-08-03 00:54:12 +0200
commit0006164589ecc755cd6bbc46e466e32be20fe285 (patch)
tree020b356477c20cee8f484ea483dafbb166eddcf7 /fs/ceph/super.h
parente19feff96380e7a98ed55446ae08c3c52ce6a994 (diff)
downloadlinux-0006164589ecc755cd6bbc46e466e32be20fe285.tar.gz
linux-0006164589ecc755cd6bbc46e466e32be20fe285.tar.bz2
linux-0006164589ecc755cd6bbc46e466e32be20fe285.zip
ceph: update the auth cap when the async create req is forwarded
For async create we will always try to choose the auth MDS of frag the dentry belonged to of the parent directory to send the request and ususally this works fine, but if the MDS migrated the directory to another MDS before it could be handled the request will be forwarded. And then the auth cap will be changed. We need to update the auth cap in this case before the request is forwarded. Link: https://tracker.ceph.com/issues/55857 Signed-off-by: Xiubo Li <xiubli@redhat.com> Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Diffstat (limited to 'fs/ceph/super.h')
-rw-r--r--fs/ceph/super.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/ceph/super.h b/fs/ceph/super.h
index 3c940a8457de..3b146c0fbb2b 100644
--- a/fs/ceph/super.h
+++ b/fs/ceph/super.h
@@ -302,6 +302,8 @@ struct ceph_dentry_info {
#define CEPH_DENTRY_PRIMARY_LINK (1 << 3)
#define CEPH_DENTRY_ASYNC_UNLINK_BIT (4)
#define CEPH_DENTRY_ASYNC_UNLINK (1 << CEPH_DENTRY_ASYNC_UNLINK_BIT)
+#define CEPH_DENTRY_ASYNC_CREATE_BIT (5)
+#define CEPH_DENTRY_ASYNC_CREATE (1 << CEPH_DENTRY_ASYNC_CREATE_BIT)
struct ceph_inode_xattrs_info {
/*