From 2a8a036dd997d95c6fc8860dce93fcbc3b14b281 Mon Sep 17 00:00:00 2001 From: Patrick Donnelly Date: Tue, 18 Feb 2025 13:45:22 -0500 Subject: [PATCH] client: indicate maps are acked not processed Ancillary change: do not do client upkeep after map processing. Signed-off-by: Patrick Donnelly (cherry picked from commit 2810ed0f60833d1c1806d2c84db3116b11f72e37) --- src/client/Client.cc | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/src/client/Client.cc b/src/client/Client.cc index f62136f8d3bc..ef8a640a9e85 100644 --- a/src/client/Client.cc +++ b/src/client/Client.cc @@ -3070,26 +3070,26 @@ Dispatcher::dispatch_result_t Client::ms_dispatch2(const MessageRef &m) RWRef_t iref_reader(initialize_state, CLIENT_INITIALIZED); if (!iref_reader.is_state_satisfied()) { ldout(cct, 10) << "inactive, discarding " << *m << dendl; - return true; + return Dispatcher::UNHANDLED(); } switch (m->get_type()) { // mounting and mds sessions case CEPH_MSG_MDS_MAP: handle_mds_map(ref_cast(m)); - break; + return Dispatcher::ACKNOWLEDGED(); case CEPH_MSG_FS_MAP: handle_fs_map(ref_cast(m)); - break; + return Dispatcher::ACKNOWLEDGED(); case CEPH_MSG_FS_MAP_USER: handle_fs_map_user(ref_cast(m)); - break; - case CEPH_MSG_CLIENT_SESSION: - handle_client_session(ref_cast(m)); - break; - + return Dispatcher::ACKNOWLEDGED(); case CEPH_MSG_OSD_MAP: handle_osd_map(ref_cast(m)); + return Dispatcher::ACKNOWLEDGED(); + + case CEPH_MSG_CLIENT_SESSION: + handle_client_session(ref_cast(m)); break; // requests @@ -3117,8 +3117,9 @@ Dispatcher::dispatch_result_t Client::ms_dispatch2(const MessageRef &m) case MSG_COMMAND_REPLY: if (m->get_source().type() == CEPH_ENTITY_TYPE_MDS) { handle_command_reply(ref_cast(m)); + return Dispatcher::HANDLED(); } else { - return false; + return Dispatcher::UNHANDLED(); } break; case CEPH_MSG_CLIENT_QUOTA: @@ -3126,7 +3127,7 @@ Dispatcher::dispatch_result_t Client::ms_dispatch2(const MessageRef &m) break; default: - return false; + return Dispatcher::UNHANDLED(); } // unmounting? @@ -3145,7 +3146,7 @@ Dispatcher::dispatch_result_t Client::ms_dispatch2(const MessageRef &m) } } - return true; + return Dispatcher::HANDLED(); } void Client::handle_fs_map(const MConstRef& m) -- 2.47.3