]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
mds: provide mechanism to authpin while freezing
authorPatrick Donnelly <pdonnell@redhat.com>
Tue, 13 Feb 2024 16:07:26 +0000 (11:07 -0500)
committerPatrick Donnelly <pdonnell@redhat.com>
Fri, 22 Mar 2024 15:38:02 +0000 (11:38 -0400)
commitca930243c4b274ff275102d174f85a9b6ef42c37
treece7a81f785293b7d983d1f104e3a6137e10b4f7e
parentdc8a69958a5e2fbd1af76c8d31e44f9ae46150db
mds: provide mechanism to authpin while freezing

When a subtree is freezing, it's no longer possible to acquire new authpins.
This is a problem when a compound request like quiescing a subtree is trying to
acquire authpins for each sub-op. This creates a situation where some quiesce
sub-ops complete with authpins (thereby preventing the tree from becoming
"frozen") and new sub-ops cannot acquire authpins (because the tree is
"freezing"). To circumvent this, allow some authpin requests to proceed if
FLAG_BYPASSFREEZING is set.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit a9964a7ccc4394f923fb0f1c76eb8fa03fe8733d)
src/mds/CDentry.cc
src/mds/CDentry.h
src/mds/CDir.cc
src/mds/CDir.h
src/mds/CInode.cc
src/mds/CInode.h
src/mds/MDSCacheObject.h
src/mds/Mutation.cc
src/mds/Mutation.h
src/mds/Server.cc
src/messages/MMDSPeerRequest.h