]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
crimson/os/seastore/onode_manager: use laddr_le_t in laddr_packed_t
authorZhang Song <zhangsong02@qianxin.com>
Tue, 13 Aug 2024 02:53:05 +0000 (10:53 +0800)
committerZhang Song <zhangsong02@qianxin.com>
Fri, 23 Aug 2024 11:19:38 +0000 (19:19 +0800)
laddr_t is no longer POD type after changing it to struct, use
laddr_le_t instead

Signed-off-by: Zhang Song <zhangsong02@qianxin.com>
src/crimson/os/seastore/onode_manager/staged-fltree/node_layout.h
src/crimson/os/seastore/onode_manager/staged-fltree/node_types.h
src/crimson/os/seastore/onode_manager/staged-fltree/stages/stage.h
src/crimson/os/seastore/onode_manager/staged-fltree/stages/sub_items_stage.cc

index e6490f7632c6ee424006040d365d3c304caeea9c..960ea6ba411814c9c4ad368ff64f89f9e78d202e 100644 (file)
@@ -375,7 +375,7 @@ class NodeLayoutT final : public InternalNodeImpl, public LeafNodeImpl {
         auto value_ptr = node_stage.get_end_p_laddr();
         int offset = reinterpret_cast<const char*>(value_ptr) - p_start;
         os << "\n  tail value: "
-           << value_ptr->value
+           << laddr_t(value_ptr->value)
            << " " << size << "B"
            << "  @" << offset << "B";
       }
index 975fceedac8ba1c773ba8f8beda83e3613f2a962..7b28bdb33fecebaf39ca9032a4eeee1bff4a7bb8 100644 (file)
@@ -44,10 +44,10 @@ inline std::ostream& operator<<(std::ostream &os, const node_type_t& type) {
 }
 
 struct laddr_packed_t {
-  laddr_t value;
+  laddr_le_t value;
 } __attribute__((packed));
 inline std::ostream& operator<<(std::ostream& os, const laddr_packed_t& laddr) {
-  return os << "laddr_packed(" << laddr.value << ")";
+  return os << "laddr_packed(" << laddr_t(laddr.value) << ")";
 }
 
 using match_stat_t = int8_t;
index 140ddba2ff5431217cfe86f7a0e062431b2dd4c8..10fa5f9518da394125080126c4c2bae78e105968 100644 (file)
@@ -1443,7 +1443,7 @@ struct staged {
         if constexpr (NODE_TYPE == node_type_t::LEAF) {
           os << *value_ptr;
         } else {
-          os << value_ptr->value;
+          os << laddr_t(value_ptr->value);
         }
         os << " " << size << "B"
            << "  @" << offset << "B";
index 28e6f7102c2cc59928775f3b305e0b3acdcf2152..38fd0ae8e0f742810da9532e3c81ac02108823f7 100644 (file)
@@ -22,7 +22,7 @@ const laddr_packed_t* internal_sub_items_t::insert_at(
 
   auto p_insert = const_cast<char*>(p_shift_end) - size;
   auto item = internal_sub_item_t{
-    snap_gen_t::from_key(key), laddr_packed_t{value}};
+    snap_gen_t::from_key(key), laddr_packed_t{laddr_le_t{value}}};
   mut.copy_in_absolute(p_insert, item);
   return &reinterpret_cast<internal_sub_item_t*>(p_insert)->value;
 }
@@ -79,7 +79,7 @@ void internal_sub_items_t::Appender<KT>::append(
 {
   p_append -= sizeof(internal_sub_item_t);
   auto item = internal_sub_item_t{
-    snap_gen_t::from_key(key), laddr_packed_t{value}};
+    snap_gen_t::from_key(key), laddr_packed_t{laddr_le_t{value}}};
   p_mut->copy_in_absolute(p_append, item);
   p_value = &reinterpret_cast<internal_sub_item_t*>(p_append)->value;
 }