]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
mds: enhance the `lock path` asok command
authorLeonid Usov <leonid.usov@ibm.com>
Sat, 11 May 2024 14:00:21 +0000 (17:00 +0300)
committerLeonid Usov <leonid.usov@ibm.com>
Mon, 20 May 2024 21:10:19 +0000 (00:10 +0300)
commit3552fc5a9ea17c173a18be41fa15fbbae8d77edf
tree0aa5a52f635c3e503b33540cb94e5ca2ce63fbb3
parent8b6440652d501644d641c1c8b3255c3720738ec6
mds: enhance the `lock path` asok command

* when the quiesce lock is taken by this op, don't consider the inode `quiesced`
* drop all locks taken during traversal
* drop all local authpins after the locks are taken
* add --await functionality that will block the command until locks are taken or an error is encountered
* return the RC that represents the operation result. 0 if the operation was scheduled and hasn't failed so far
* add authpin control flags
** --ap-freeze - to auth_pin_freeze the target inode
** --ap-dont-block - to pass auth_pin_nonblocking when acquiring the target inode locks

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
qa/tasks/cephfs/test_quiesce.py
src/mds/CInode.cc
src/mds/CInode.h
src/mds/MDCache.cc
src/mds/MDCache.h
src/mds/MDSDaemon.cc
src/mds/MDSRank.cc
src/mds/MDSRank.h
src/mds/Mutation.cc
src/mds/Mutation.h