]> 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>
Tue, 2 Dec 2025 23:12:58 +0000 (15:12 -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 9dab2f7b0cd5486b584ee0f65fb66d259ea40c9c..9da8511b5adb354e640a184fab6256696aa23abd 100644 (file)
@@ -360,7 +360,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 3cb4a51714d92ba53b58fd14f1316a9367bd4dde..b8bb4e650a42da500c0ee9fc619edc8692480d83 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 dce9ba410fcddf4ea769cd686699f37febbea34d..84d72211c9a99bc30cdf49c59f30872245e7c0b5 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 f4d8b2c49523e494d9f90ff69dfa344e89368964..dbc076d2a6868c14c91ccbfc6619e626d85ff241 100644 (file)
@@ -690,14 +690,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 7d84bee4a23601ae2b3aec407a9fae2c53f23ebe..42a03ce9128572c187dff935ffd912ad313a4ea8 100644 (file)
@@ -528,8 +528,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(
@@ -546,7 +546,7 @@ public:
       hint,
       len
     );
-    co_return pin;
+    co_return LBAMapping::create_direct(std::move(pin));
   }
 
   /*