From 3f67d67ede11605b78f9e3abeacd9c46c37d3794 Mon Sep 17 00:00:00 2001 From: Kefu Chai Date: Tue, 22 Nov 2022 12:13:49 +0800 Subject: [PATCH] crimson: specialize fmt::formatter<> to print using {fmt} in {fmt} v9, fmt::formatter<> is not defined automatically for the types with operator<<, we need to define them explictly. so in this change, the types printed using `fmt::print()` or `fmt::format()` are equiped with fmt::formatter<> to appease {fmt} v9. Signed-off-by: Kefu Chai --- src/crimson/admin/admin_socket.cc | 1 + src/crimson/common/logclient.cc | 1 + src/crimson/common/operation.h | 4 ++++ src/crimson/mgr/client.h | 4 ++++ src/crimson/mon/MonClient.cc | 2 +- src/crimson/mon/MonClient.h | 4 ++++ src/crimson/net/Connection.h | 4 ++++ src/crimson/net/Messenger.h | 4 ++++ src/crimson/net/Protocol.h | 4 ++++ src/crimson/net/ProtocolV2.cc | 2 ++ src/crimson/net/ProtocolV2.h | 4 ++++ src/crimson/net/SocketConnection.h | 4 ++++ src/crimson/net/SocketMessenger.cc | 1 + src/crimson/net/SocketMessenger.h | 4 ++++ .../os/seastore/backref/backref_tree_node.h | 5 +++++ src/crimson/os/seastore/btree/btree_range_pin.h | 4 ++++ src/crimson/os/seastore/cached_extent.h | 6 ++++++ .../collection_manager/collection_flat_node.h | 4 ++++ src/crimson/os/seastore/device.h | 4 ++++ .../seastore/lba_manager/btree/lba_btree_node.h | 5 +++++ src/crimson/os/seastore/object_data_handler.h | 4 ++++ .../omap_manager/btree/omap_btree_node_impl.h | 5 +++++ .../node_extent_manager/seastore.h | 4 ++++ src/crimson/os/seastore/root_block.h | 4 ++++ src/crimson/os/seastore/seastore_types.h | 17 +++++++++++++++++ src/crimson/os/seastore/segment_manager.h | 4 ++++ .../os/seastore/segment_manager/ephemeral.h | 4 ++++ src/crimson/os/seastore/transaction.h | 4 ++++ src/crimson/osd/backfill_state.cc | 4 +++- src/crimson/osd/heartbeat.cc | 2 ++ src/crimson/osd/heartbeat.h | 8 ++++++++ src/crimson/osd/osd.cc | 1 + src/crimson/osd/osd.h | 4 ++++ .../osd/osd_operations/background_recovery.h | 5 ++++- src/crimson/osd/osd_operations/client_request.h | 4 ++++ .../osd/osd_operations/logmissing_request.h | 4 ++++ .../osd_operations/logmissing_request_reply.h | 4 ++++ src/crimson/osd/osd_operations/peering_event.h | 5 +++++ src/crimson/osd/osd_operations/pg_advance_map.h | 4 ++++ .../osd/osd_operations/recovery_subrequest.h | 4 ++++ .../osd/osd_operations/replicated_request.h | 4 ++++ src/crimson/osd/pg.cc | 3 +++ src/crimson/osd/pg.h | 4 ++++ src/crimson/osd/shard_services.h | 4 ++++ src/test/crimson/seastore/test_block.h | 5 +++++ 45 files changed, 183 insertions(+), 3 deletions(-) diff --git a/src/crimson/admin/admin_socket.cc b/src/crimson/admin/admin_socket.cc index ca9b27ee0df..88ce8b1b73c 100644 --- a/src/crimson/admin/admin_socket.cc +++ b/src/crimson/admin/admin_socket.cc @@ -5,6 +5,7 @@ #include #include +#include #include #include #include diff --git a/src/crimson/common/logclient.cc b/src/crimson/common/logclient.cc index 0371f514183..d402ecd1901 100644 --- a/src/crimson/common/logclient.cc +++ b/src/crimson/common/logclient.cc @@ -1,4 +1,5 @@ #include "crimson/common/logclient.h" +#include #include "include/str_map.h" #include "messages/MLog.h" #include "messages/MLogAck.h" diff --git a/src/crimson/common/operation.h b/src/crimson/common/operation.h index 0bb5c8e9532..c3be299fd07 100644 --- a/src/crimson/common/operation.h +++ b/src/crimson/common/operation.h @@ -757,3 +757,7 @@ public: }; } + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/mgr/client.h b/src/crimson/mgr/client.h index 92f15767706..e8457543305 100644 --- a/src/crimson/mgr/client.h +++ b/src/crimson/mgr/client.h @@ -64,3 +64,7 @@ inline std::ostream& operator<<(std::ostream& out, const Client& client) { } } + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/mon/MonClient.cc b/src/crimson/mon/MonClient.cc index 24a9e2fc532..760a9757929 100644 --- a/src/crimson/mon/MonClient.cc +++ b/src/crimson/mon/MonClient.cc @@ -4,7 +4,7 @@ #include "MonClient.h" #include - +#include #include #include #include diff --git a/src/crimson/mon/MonClient.h b/src/crimson/mon/MonClient.h index 4e6d1e2dc39..1228ecd0bba 100644 --- a/src/crimson/mon/MonClient.h +++ b/src/crimson/mon/MonClient.h @@ -212,3 +212,7 @@ inline std::ostream& operator<<(std::ostream& out, const Client& client) { } } // namespace crimson::mon + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/net/Connection.h b/src/crimson/net/Connection.h index 33b057880db..7cb78438dc3 100644 --- a/src/crimson/net/Connection.h +++ b/src/crimson/net/Connection.h @@ -125,3 +125,7 @@ inline std::ostream& operator<<(std::ostream& out, const Connection& conn) { } } // namespace crimson::net + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/net/Messenger.h b/src/crimson/net/Messenger.h index 8415fbb40f5..e2fba32578b 100644 --- a/src/crimson/net/Messenger.h +++ b/src/crimson/net/Messenger.h @@ -123,3 +123,7 @@ inline std::ostream& operator<<(std::ostream& out, const Messenger& msgr) { } } // namespace crimson::net + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/net/Protocol.h b/src/crimson/net/Protocol.h index e982c79302f..fb95a446432 100644 --- a/src/crimson/net/Protocol.h +++ b/src/crimson/net/Protocol.h @@ -192,3 +192,7 @@ struct fmt::formatter return formatter::format(name, ctx); } }; + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/net/ProtocolV2.cc b/src/crimson/net/ProtocolV2.cc index 54d42f6ef3e..edcc7de5947 100644 --- a/src/crimson/net/ProtocolV2.cc +++ b/src/crimson/net/ProtocolV2.cc @@ -5,8 +5,10 @@ #include #include +#include #include "include/msgr.h" #include "include/random.h" +#include "msg/msg_fmt.h" #include "crimson/auth/AuthClient.h" #include "crimson/auth/AuthServer.h" diff --git a/src/crimson/net/ProtocolV2.h b/src/crimson/net/ProtocolV2.h index 0f07f2d8ccd..d86d4b5721b 100644 --- a/src/crimson/net/ProtocolV2.h +++ b/src/crimson/net/ProtocolV2.h @@ -231,3 +231,7 @@ class ProtocolV2 final : public Protocol { }; } // namespace crimson::net + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/net/SocketConnection.h b/src/crimson/net/SocketConnection.h index c886de99b9b..c93eccf3ac0 100644 --- a/src/crimson/net/SocketConnection.h +++ b/src/crimson/net/SocketConnection.h @@ -213,3 +213,7 @@ class SocketConnection : public Connection { }; } // namespace crimson::net + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/net/SocketMessenger.cc b/src/crimson/net/SocketMessenger.cc index 0a0092b25ec..6bfb0f341de 100644 --- a/src/crimson/net/SocketMessenger.cc +++ b/src/crimson/net/SocketMessenger.cc @@ -18,6 +18,7 @@ #include #include +#include #include "auth/Auth.h" #include "Errors.h" diff --git a/src/crimson/net/SocketMessenger.h b/src/crimson/net/SocketMessenger.h index 8d7a7670d80..4eebaab3080 100644 --- a/src/crimson/net/SocketMessenger.h +++ b/src/crimson/net/SocketMessenger.h @@ -164,3 +164,7 @@ class SocketMessenger final : public Messenger { }; } // namespace crimson::net + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/os/seastore/backref/backref_tree_node.h b/src/crimson/os/seastore/backref/backref_tree_node.h index 15f1d451b07..6e872e77254 100644 --- a/src/crimson/os/seastore/backref/backref_tree_node.h +++ b/src/crimson/os/seastore/backref/backref_tree_node.h @@ -133,3 +133,8 @@ public: using BackrefLeafNodeRef = BackrefLeafNode::Ref; } // namespace crimson::os::seastore::backref + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/os/seastore/btree/btree_range_pin.h b/src/crimson/os/seastore/btree/btree_range_pin.h index 8704941ebee..da1a67ba5d3 100644 --- a/src/crimson/os/seastore/btree/btree_range_pin.h +++ b/src/crimson/os/seastore/btree/btree_range_pin.h @@ -513,3 +513,7 @@ public: }; } + +#if FMT_VERSION >= 90000 +template struct fmt::formatter> : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/os/seastore/cached_extent.h b/src/crimson/os/seastore/cached_extent.h index f7b424a02af..c4283616235 100644 --- a/src/crimson/os/seastore/cached_extent.h +++ b/src/crimson/os/seastore/cached_extent.h @@ -933,3 +933,9 @@ using lextent_list_t = addr_extent_list_base_t< laddr_t, TCachedExtentRef>; } + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +template <> struct fmt::formatter : fmt::ostream_formatter {}; +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/os/seastore/collection_manager/collection_flat_node.h b/src/crimson/os/seastore/collection_manager/collection_flat_node.h index 7fb6cd6a3d1..c35500ffd67 100644 --- a/src/crimson/os/seastore/collection_manager/collection_flat_node.h +++ b/src/crimson/os/seastore/collection_manager/collection_flat_node.h @@ -180,3 +180,7 @@ struct CollectionNode }; using CollectionNodeRef = CollectionNode::CollectionNodeRef; } + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/os/seastore/device.h b/src/crimson/os/seastore/device.h index aeff3d9595b..24a3d4bac2b 100644 --- a/src/crimson/os/seastore/device.h +++ b/src/crimson/os/seastore/device.h @@ -125,3 +125,7 @@ public: WRITE_CLASS_DENC_BOUNDED(crimson::os::seastore::device_spec_t) WRITE_CLASS_DENC(crimson::os::seastore::device_config_t) + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/os/seastore/lba_manager/btree/lba_btree_node.h b/src/crimson/os/seastore/lba_manager/btree/lba_btree_node.h index 060163b6c32..bf69d8ddc49 100644 --- a/src/crimson/os/seastore/lba_manager/btree/lba_btree_node.h +++ b/src/crimson/os/seastore/lba_manager/btree/lba_btree_node.h @@ -217,3 +217,8 @@ struct LBALeafNode using LBALeafNodeRef = TCachedExtentRef; } + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/os/seastore/object_data_handler.h b/src/crimson/os/seastore/object_data_handler.h index ad6bc414131..510dd8f1449 100644 --- a/src/crimson/os/seastore/object_data_handler.h +++ b/src/crimson/os/seastore/object_data_handler.h @@ -135,3 +135,7 @@ private: }; } + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/os/seastore/omap_manager/btree/omap_btree_node_impl.h b/src/crimson/os/seastore/omap_manager/btree/omap_btree_node_impl.h index 8a344f06a7d..500939d5f5d 100644 --- a/src/crimson/os/seastore/omap_manager/btree/omap_btree_node_impl.h +++ b/src/crimson/os/seastore/omap_manager/btree/omap_btree_node_impl.h @@ -241,3 +241,8 @@ using OMapLeafNodeRef = OMapLeafNode::OMapLeafNodeRef; std::ostream &operator<<(std::ostream &out, const omap_inner_key_t &rhs); std::ostream &operator<<(std::ostream &out, const omap_leaf_key_t &rhs); } + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/os/seastore/onode_manager/staged-fltree/node_extent_manager/seastore.h b/src/crimson/os/seastore/onode_manager/staged-fltree/node_extent_manager/seastore.h index 1e151118fe7..b648baacf00 100644 --- a/src/crimson/os/seastore/onode_manager/staged-fltree/node_extent_manager/seastore.h +++ b/src/crimson/os/seastore/onode_manager/staged-fltree/node_extent_manager/seastore.h @@ -217,3 +217,7 @@ class SeastoreNodeExtentManager final: public TransactionManagerHandle { }; } + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/os/seastore/root_block.h b/src/crimson/os/seastore/root_block.h index 1d329d64e02..b686e56a464 100644 --- a/src/crimson/os/seastore/root_block.h +++ b/src/crimson/os/seastore/root_block.h @@ -88,3 +88,7 @@ struct RootBlock : CachedExtent { using RootBlockRef = RootBlock::Ref; } + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/os/seastore/seastore_types.h b/src/crimson/os/seastore/seastore_types.h index f948d2466f3..37854bc91c3 100644 --- a/src/crimson/os/seastore/seastore_types.h +++ b/src/crimson/os/seastore/seastore_types.h @@ -2180,3 +2180,20 @@ struct denc_traits { reinterpret_cast(&o)); } }; + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +template <> struct fmt::formatter : fmt::ostream_formatter {}; +template <> struct fmt::formatter : fmt::ostream_formatter {}; +template <> struct fmt::formatter : fmt::ostream_formatter {}; +template <> struct fmt::formatter : fmt::ostream_formatter {}; +template <> struct fmt::formatter : fmt::ostream_formatter {}; +template <> struct fmt::formatter : fmt::ostream_formatter {}; +template <> struct fmt::formatter : fmt::ostream_formatter {}; +template <> struct fmt::formatter : fmt::ostream_formatter {}; +template <> struct fmt::formatter : fmt::ostream_formatter {}; +template <> struct fmt::formatter : fmt::ostream_formatter {}; +template <> struct fmt::formatter : fmt::ostream_formatter {}; +template <> struct fmt::formatter : fmt::ostream_formatter {}; +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/os/seastore/segment_manager.h b/src/crimson/os/seastore/segment_manager.h index 21241c03e09..9413e9933db 100644 --- a/src/crimson/os/seastore/segment_manager.h +++ b/src/crimson/os/seastore/segment_manager.h @@ -191,3 +191,7 @@ public: WRITE_CLASS_DENC( crimson::os::seastore::block_sm_superblock_t ) + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/os/seastore/segment_manager/ephemeral.h b/src/crimson/os/seastore/segment_manager/ephemeral.h index 1dab899be57..dc7b33f809b 100644 --- a/src/crimson/os/seastore/segment_manager/ephemeral.h +++ b/src/crimson/os/seastore/segment_manager/ephemeral.h @@ -153,3 +153,7 @@ public: }; } + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/os/seastore/transaction.h b/src/crimson/os/seastore/transaction.h index 0f5f31f277d..558f3c17325 100644 --- a/src/crimson/os/seastore/transaction.h +++ b/src/crimson/os/seastore/transaction.h @@ -590,3 +590,7 @@ template using with_trans_ertr = typename T::base_ertr::template extend; } + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/osd/backfill_state.cc b/src/crimson/osd/backfill_state.cc index 57f845f92f5..46a270ffe54 100644 --- a/src/crimson/osd/backfill_state.cc +++ b/src/crimson/osd/backfill_state.cc @@ -3,8 +3,10 @@ #include #include - +#include +#include "common/hobject_fmt.h" #include "crimson/osd/backfill_state.h" +#include "osd/osd_types_fmt.h" namespace { seastar::logger& logger() { diff --git a/src/crimson/osd/heartbeat.cc b/src/crimson/osd/heartbeat.cc index 484fe221368..b4cdba6f2f2 100644 --- a/src/crimson/osd/heartbeat.cc +++ b/src/crimson/osd/heartbeat.cc @@ -4,6 +4,8 @@ #include "heartbeat.h" #include +#include +#include #include "messages/MOSDPing.h" #include "messages/MOSDFailure.h" diff --git a/src/crimson/osd/heartbeat.h b/src/crimson/osd/heartbeat.h index 50beb02b3fe..2d9cd8b2435 100644 --- a/src/crimson/osd/heartbeat.h +++ b/src/crimson/osd/heartbeat.h @@ -246,6 +246,10 @@ class Heartbeat::Connection { } }; +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif + /* * Track the ping history and ping reply (the pong) from the same session, clean up * history once hb_front or hb_back loses connection and restart the session once @@ -454,3 +458,7 @@ class Heartbeat::Peer final : private Heartbeat::ConnectionListener { Connection con_front; Connection con_back; }; + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/osd/osd.cc b/src/crimson/osd/osd.cc index 47d728b39af..bae5cecfbe2 100644 --- a/src/crimson/osd/osd.cc +++ b/src/crimson/osd/osd.cc @@ -8,6 +8,7 @@ #include #include #include +#include #include #include diff --git a/src/crimson/osd/osd.h b/src/crimson/osd/osd.h index 6138e12f3ce..b3933e80c26 100644 --- a/src/crimson/osd/osd.h +++ b/src/crimson/osd/osd.h @@ -235,3 +235,7 @@ inline std::ostream& operator<<(std::ostream& out, const OSD& osd) { } } + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/osd/osd_operations/background_recovery.h b/src/crimson/osd/osd_operations/background_recovery.h index aef7135f9bf..8a1732e402a 100644 --- a/src/crimson/osd/osd_operations/background_recovery.h +++ b/src/crimson/osd/osd_operations/background_recovery.h @@ -142,5 +142,8 @@ BackfillRecovery::BackfillRecovery( evt(evt.intrusive_from_this()) {} - } + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/osd/osd_operations/client_request.h b/src/crimson/osd/osd_operations/client_request.h index 4b91109b923..16226fb61b3 100644 --- a/src/crimson/osd/osd_operations/client_request.h +++ b/src/crimson/osd/osd_operations/client_request.h @@ -260,3 +260,7 @@ public: }; } + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/osd/osd_operations/logmissing_request.h b/src/crimson/osd/osd_operations/logmissing_request.h index 4fae50e4f4f..e05868a9648 100644 --- a/src/crimson/osd/osd_operations/logmissing_request.h +++ b/src/crimson/osd/osd_operations/logmissing_request.h @@ -68,3 +68,7 @@ private: }; } + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/osd/osd_operations/logmissing_request_reply.h b/src/crimson/osd/osd_operations/logmissing_request_reply.h index a3615f3c009..9d307987158 100644 --- a/src/crimson/osd/osd_operations/logmissing_request_reply.h +++ b/src/crimson/osd/osd_operations/logmissing_request_reply.h @@ -68,3 +68,7 @@ private: }; } + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/osd/osd_operations/peering_event.h b/src/crimson/osd/osd_operations/peering_event.h index dbd7f28ec31..c098f086fdc 100644 --- a/src/crimson/osd/osd_operations/peering_event.h +++ b/src/crimson/osd/osd_operations/peering_event.h @@ -187,3 +187,8 @@ public: } + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/osd/osd_operations/pg_advance_map.h b/src/crimson/osd/osd_operations/pg_advance_map.h index 6ae5a97bc0f..c7277f790b3 100644 --- a/src/crimson/osd/osd_operations/pg_advance_map.h +++ b/src/crimson/osd/osd_operations/pg_advance_map.h @@ -52,3 +52,7 @@ public: }; } + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/osd/osd_operations/recovery_subrequest.h b/src/crimson/osd/osd_operations/recovery_subrequest.h index f1c0bc775e6..c7b7efb5182 100644 --- a/src/crimson/osd/osd_operations/recovery_subrequest.h +++ b/src/crimson/osd/osd_operations/recovery_subrequest.h @@ -62,3 +62,7 @@ private: }; } + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/osd/osd_operations/replicated_request.h b/src/crimson/osd/osd_operations/replicated_request.h index b04ee0f9388..467a581c6db 100644 --- a/src/crimson/osd/osd_operations/replicated_request.h +++ b/src/crimson/osd/osd_operations/replicated_request.h @@ -66,3 +66,7 @@ private: }; } + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/osd/pg.cc b/src/crimson/osd/pg.cc index 248b510cfbc..7f30c1d2865 100644 --- a/src/crimson/osd/pg.cc +++ b/src/crimson/osd/pg.cc @@ -14,12 +14,15 @@ #include #include +#include "common/hobject_fmt.h" + #include "messages/MOSDOp.h" #include "messages/MOSDOpReply.h" #include "messages/MOSDRepOp.h" #include "messages/MOSDRepOpReply.h" #include "osd/OSDMap.h" +#include "osd/osd_types_fmt.h" #include "os/Transaction.h" diff --git a/src/crimson/osd/pg.h b/src/crimson/osd/pg.h index 565ac055983..2bd230c285b 100644 --- a/src/crimson/osd/pg.h +++ b/src/crimson/osd/pg.h @@ -833,3 +833,7 @@ struct PG::do_osd_ops_params_t { std::ostream& operator<<(std::ostream&, const PG& pg); } + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/crimson/osd/shard_services.h b/src/crimson/osd/shard_services.h index 1a3b9dc30a9..19eccc68f45 100644 --- a/src/crimson/osd/shard_services.h +++ b/src/crimson/osd/shard_services.h @@ -531,3 +531,7 @@ public: }; } + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/test/crimson/seastore/test_block.h b/src/test/crimson/seastore/test_block.h index e53557685a3..9324694d38e 100644 --- a/src/test/crimson/seastore/test_block.h +++ b/src/test/crimson/seastore/test_block.h @@ -146,3 +146,8 @@ struct test_block_mutator_t { } WRITE_CLASS_DENC_BOUNDED(crimson::os::seastore::test_block_delta_t) + +#if FMT_VERSION >= 90000 +template <> struct fmt::formatter : fmt::ostream_formatter {}; +template <> struct fmt::formatter : fmt::ostream_formatter {}; +#endif -- 2.39.5