From: Samuel Just Date: Mon, 18 Mar 2024 23:26:36 +0000 (+0000) Subject: crimson/osd/osd.h: declare osdmap after OSDSingletonState X-Git-Tag: v19.1.1~384^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=2cf41e8408a72f2a32aeb1464bf5e0da29d17db6;p=ceph.git crimson/osd/osd.h: declare osdmap after OSDSingletonState Otherwise, destructing the osdmap cached_map_t tries to manipulate OSDSingletonState::osdmaps after it has already been destroyed. Fixes: https://tracker.ceph.com/issues/64935 Signed-off-by: Samuel Just (cherry picked from commit b623594c44df1c7d75fa7a8d4e8b90f8829d249f) --- diff --git a/src/crimson/osd/osd.h b/src/crimson/osd/osd.h index db30ad0ec737..fa3b0293072b 100644 --- a/src/crimson/osd/osd.h +++ b/src/crimson/osd/osd.h @@ -80,7 +80,6 @@ class OSD final : public crimson::net::Dispatcher, std::unique_ptr mgrc; // TODO: use a wrapper for ObjectStore - OSDMapService::cached_map_t osdmap; crimson::os::FuturizedStore& store; /// _first_ epoch we were marked up (after this process started) @@ -122,6 +121,8 @@ class OSD final : public crimson::net::Dispatcher, seastar::sharded osd_states; seastar::sharded shard_services; + OSDMapService::cached_map_t osdmap; + crimson::osd::PGShardManager pg_shard_manager; std::unique_ptr heartbeat;