]> 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, 5 Jan 2026 21:14:58 +0000 (13:14 -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 12cc8c9ba7115880bb7edc051098331a69bdb4ef..6ba0b942f04d20b3f9dff229a04019a9358834d8 100644 (file)
@@ -361,7 +361,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 e6e00dc3617bae1f9c0b08135ff586168cb25d88..ef591fba5af2f6ff52c0706f06ad794ffff4c910 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 62c1aa5186e61fd1ac581f72bb94aa154bc8f84e..ddb5ee4f9a97c8c1919c7f456a0418a1a8d61e30 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 761be3576493f47c0fdfaa455063ab6bd3051f60..da27aec74a2925f42e4a47d77ab42ec9d2215b84 100644 (file)
@@ -695,14 +695,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 24f594e1604077864b9acb6ceb54d952ce9afc08..6b11731aeab4dd4a662d9453caed944c6de5ddc6 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));
   }
 
   /*