]> 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:14:50 +0000 (12:44 +0530)
commit375c29537e78d758f74a0366a2b27ed021a34d2b
treeea87170241f1abb26ab1722f046c5175873f26a0
parent3fb9319d6d313c6c25d08cf982e3442e1cacad06
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