From: Xiubo Li Date: Wed, 31 Jul 2024 02:14:59 +0000 (+0800) Subject: mds: add the event when creating the batch head X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=8ed9f3b3c76f021fbdc958f0f7f78ae987af8098;p=ceph.git mds: add the event when creating the batch head 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 (cherry picked from commit 7e08760a0e560759fa73e7b889494bdb60a03ff3) --- diff --git a/src/mds/Server.cc b/src/mds/Server.cc index 49d5fdd7efaa..6b57d2b05753 100644 --- a/src/mds/Server.cc +++ b/src/mds/Server.cc @@ -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(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(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);