]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
mds: add the event when creating the batch head
authorXiubo Li <xiubli@redhat.com>
Wed, 31 Jul 2024 02:14:59 +0000 (10:14 +0800)
committerJos Collin <jcollin@redhat.com>
Thu, 28 Aug 2025 04:04:39 +0000 (09:34 +0530)
This could help us the debug the slow request or deadlock bugs and
we could know which stage the request has been in.

Fixes: https://tracker.ceph.com/issues/67280
Signed-off-by: Xiubo Li <xiubli@redhat.com>
(cherry picked from commit 7e08760a0e560759fa73e7b889494bdb60a03ff3)

src/mds/Server.cc

index 49d5fdd7efaac3ea1b7a5adf812ed1516954ece2..6b57d2b057535cdf92e31f466726a7b113a9ab93 100644 (file)
@@ -4143,6 +4143,7 @@ void Server::handle_client_getattr(const MDRequestRef& mdr, bool is_lookup)
       auto em = dn->batch_ops.emplace(std::piecewise_construct, std::forward_as_tuple(mask), std::forward_as_tuple());
       if (em.second) {
        em.first->second = std::make_unique<Batch_Getattr_Lookup>(this, mdr);
+        mdr->mark_event("creating lookup batch head");
       } else {
        dout(20) << __func__ << ": LOOKUP op, wait for previous same getattr ops to respond. " << *mdr << dendl;
        em.first->second->add_request(mdr);
@@ -4155,6 +4156,7 @@ void Server::handle_client_getattr(const MDRequestRef& mdr, bool is_lookup)
       auto em = in->batch_ops.emplace(std::piecewise_construct, std::forward_as_tuple(mask), std::forward_as_tuple());
       if (em.second) {
        em.first->second = std::make_unique<Batch_Getattr_Lookup>(this, mdr);
+        mdr->mark_event("creating getattr batch head");
       } else {
        dout(20) << __func__ << ": GETATTR op, wait for previous same getattr ops to respond. " << *mdr << dendl;
        em.first->second->add_request(mdr);