From 388544ba72d0dc7484ae6877a2a989d84a883fd5 Mon Sep 17 00:00:00 2001 From: Abhishek Lekshmanan Date: Tue, 1 Apr 2025 12:07:56 +0200 Subject: [PATCH] mds: MDCache: check validity of mdr requests before dispatching Ignore null requests Signed-off-by: Abhishek Lekshmanan (cherry picked from commit 75cd8c074f37de2a492177c54b3ef1879ab87637) --- src/mds/MDCache.cc | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/mds/MDCache.cc b/src/mds/MDCache.cc index d3c8e8a49277..eb9ef46c29bf 100644 --- a/src/mds/MDCache.cc +++ b/src/mds/MDCache.cc @@ -9850,6 +9850,10 @@ void MDCache::request_forward(const MDRequestRef& mdr, mds_rank_t who, int port) void MDCache::dispatch_request(const MDRequestRef& mdr) { + if (!mdr) { + dout(0) << __func__ << ": received a null request!" << dendl; + return; + } if (mdr->dead) { dout(20) << __func__ << ": dead " << *mdr << dendl; return; @@ -13072,7 +13076,9 @@ int MDCache::dump_cache(std::string_view fn, Formatter *f, double timeout) void C_MDS_RetryRequest::finish(int r) { mdr->retry++; - cache->dispatch_request(mdr); + if (mdr) { + cache->dispatch_request(mdr); + } } MDSContext *CF_MDS_RetryRequestFactory::build() -- 2.47.3