]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
crimson/.../lba_manager: switch alloc_extent_ret to LBACursorRef
authorSamuel Just <sjust@redhat.com>
Fri, 10 Oct 2025 00:11:32 +0000 (00:11 +0000)
committerSamuel Just <sjust@redhat.com>
Mon, 16 Feb 2026 23:40:56 +0000 (15:40 -0800)
Signed-off-by: Samuel Just <sjust@redhat.com>
src/crimson/os/seastore/lba/btree_lba_manager.cc
src/crimson/os/seastore/lba/btree_lba_manager.h
src/crimson/os/seastore/lba_manager.h
src/crimson/os/seastore/transaction_manager.cc
src/crimson/os/seastore/transaction_manager.h

index 3b02eac6a90a1a8b82f87c7189819bae1892b57e..7e4f59c79dc18648c829eea9bdf7a78e42fe165e 100644 (file)
@@ -366,7 +366,7 @@ BtreeLBAManager::reserve_region(
     iter.get_leaf_pos(),
     get_reserved_ptr<LBALeafNode, laddr_t>(),
     leaf_node.get_size() - 1 /*the size before the insert*/);
-  co_return LBAMapping::create_direct(iter.get_cursor(c));
+  co_return iter.get_cursor(c);
 }
 
 BtreeLBAManager::alloc_extents_ret
index 5d6f204ef10d4fd1479a60d32101a1822fd45160..52e463542aec29cb90c8cebe25ebdbbd6920dd53 100644 (file)
@@ -104,7 +104,7 @@ public:
     auto cursors = co_await alloc_contiguous_mappings(
       t, hint, alloc_infos, alloc_policy_t::linear_search);
     assert(cursors.size() == 1);
-    co_return LBAMapping::create_direct(std::move(cursors.front()));
+    co_return std::move(cursors.front());
   }
 
   clone_mapping_ret clone_mapping(
@@ -146,7 +146,7 @@ public:
       t, hint, alloc_infos, alloc_policy_t::linear_search
     );
     assert(cursors.size() == 1);
-    co_return LBAMapping::create_direct(std::move(cursors.front()));
+    co_return std::move(cursors.front());
   }
 
   alloc_extents_ret alloc_extents(
index 0dae5aad5849d9c9b9b6ca1400227426001cd557..638fe02180942e3ae23433f8931f36ff171f5190 100644 (file)
@@ -103,7 +103,7 @@ public:
    * is called on the LBAMapping.
    */
   using alloc_extent_iertr = base_iertr;
-  using alloc_extent_ret = alloc_extent_iertr::future<LBAMapping>;
+  using alloc_extent_ret = alloc_extent_iertr::future<LBACursorRef>;
   virtual alloc_extent_ret alloc_extent(
     Transaction &t,
     laddr_t hint,
index 01d6df40a18edb84f458a601f185b4018c91921b..f85165eaaadb59355284f79e281cb3bf4af8fbf4 100644 (file)
@@ -712,14 +712,14 @@ TransactionManager::rewrite_logical_extent(
        );
       } else {
        ceph_assert(refcount != 0);
-       auto mapping = co_await lba_manager->alloc_extent(
+       auto cursor = co_await lba_manager->alloc_extent(
          t,
          (extent->get_laddr() + off).checked_to_laddr(),
          *nextent,
          refcount
        );
-       ceph_assert(mapping.get_key() == extent->get_laddr() + off);
-       ceph_assert(mapping.get_val() == nextent->get_paddr());
+       ceph_assert(cursor->get_laddr() == extent->get_laddr() + off);
+       ceph_assert(cursor->get_paddr() == nextent->get_paddr());
       }
       off += nextent->get_length();
       left -= nextent->get_length();
index 900a4158359101028c1f334d19f553f5b4aec835..9b07b9ec3ae88af71a1a56a745f5dcfc28c32718 100644 (file)
@@ -530,8 +530,8 @@ public:
       hint,
       len
     );
-    SUBDEBUGT(seastore_tm, "reserved {}", t, pin);
-    co_return pin;
+    SUBDEBUGT(seastore_tm, "reserved {}", t, *pin);
+    co_return LBAMapping::create_direct(std::move(pin));
   }
 
   reserve_extent_ret reserve_region(
@@ -548,7 +548,7 @@ public:
       hint,
       len
     );
-    co_return pin;
+    co_return LBAMapping::create_direct(std::move(pin));
   }
 
   /*