From 3d610aeaee3b0f60f044904fe4a5bcb52c544179 Mon Sep 17 00:00:00 2001 From: Xiubo Li Date: Mon, 20 Dec 2021 10:21:50 +0800 Subject: [PATCH] client: force a request to update the perms If the caller perms is different with the current dirtier's, we can still cache the attributes locally if possible, but will mark the ctime needs to be updated forcely and the request will implicitly flush the dirty caps for us. Signed-off-by: Xiubo Li (cherry picked from commit 569770afe52726e1df970c2219b8aa2c080e8a31) --- src/client/Client.cc | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/client/Client.cc b/src/client/Client.cc index 13dc52051b27b..34b19fe4c4789 100644 --- a/src/client/Client.cc +++ b/src/client/Client.cc @@ -7566,9 +7566,7 @@ int Client::_do_setattr(Inode *in, struct ceph_statx *stx, int mask, * case later, we can build a more complex pipelined cap writeback * infrastructure... */ - if (!mask) - mask |= CEPH_SETATTR_CTIME; - goto force_request; + mask |= CEPH_SETATTR_CTIME; } if (!mask) { @@ -7768,7 +7766,6 @@ int Client::_do_setattr(Inode *in, struct ceph_statx *stx, int mask, return 0; } -force_request: MetaRequest *req = new MetaRequest(CEPH_MDS_OP_SETATTR); filepath path; -- 2.39.5