]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
mds: avoid acquiring the wrlock twice for a single request
authorXiubo Li <xiubli@redhat.com>
Mon, 8 Jul 2024 07:53:28 +0000 (15:53 +0800)
committerVenky Shankar <vshankar@redhat.com>
Mon, 17 Feb 2025 07:30:48 +0000 (13:00 +0530)
commitd5d623382da886a008f87a570e631b4ba4a6b7f5
tree1c68699cc8ddc4c865f1ec53ffcbecaf1360352b
parentf9f6bf94457d9ccd979691b5124e1001e67fd596
mds: avoid acquiring the wrlock twice for a single request

In case the current request has lock cache attached and then the
lock cache must have already acquired the wrlock of filelock. So
currently the path_traverse() will acquire the wrlock twice and
possibly caused deadlock by itself.

Fixes: https://tracker.ceph.com/issues/65607
Signed-off-by: Xiubo Li <xiubli@redhat.com>
Signed-off-by: Sunnatillo <sunnat.samadov@est.tech>
(cherry picked from commit 276b81a55d391b52f9772fc76b86b845eb3854a6)

Conflicts:
    src/mds/MDSRank.cc

This commit moves around the config `mds_allow_async_dirops` in
the tracked keys which caused the conflict - avoid the move.
src/mds/MDCache.cc