From 7b6ea2a4e9dc05cddd9f144dca144b65578a9fc3 Mon Sep 17 00:00:00 2001 From: Samuel Just Date: Mon, 20 Oct 2025 23:55:00 +0000 Subject: [PATCH] crimson/.../lba_manager: convert reserve_region to use cursor Signed-off-by: Samuel Just --- src/crimson/os/seastore/lba/btree_lba_manager.cc | 9 ++++----- src/crimson/os/seastore/lba/btree_lba_manager.h | 2 +- src/crimson/os/seastore/lba_manager.h | 2 +- src/crimson/os/seastore/transaction_manager.h | 2 +- 4 files changed, 7 insertions(+), 8 deletions(-) diff --git a/src/crimson/os/seastore/lba/btree_lba_manager.cc b/src/crimson/os/seastore/lba/btree_lba_manager.cc index 60eafd4560f..8c7022b9c49 100644 --- a/src/crimson/os/seastore/lba/btree_lba_manager.cc +++ b/src/crimson/os/seastore/lba/btree_lba_manager.cc @@ -239,17 +239,16 @@ BtreeLBAManager::resolve_indirect_cursor( BtreeLBAManager::alloc_extent_ret BtreeLBAManager::reserve_region( Transaction &t, - LBAMapping pos, + LBACursorRef cursor, laddr_t addr, extent_len_t len) { LOG_PREFIX(BtreeLBAManager::reserve_region); - DEBUGT("{} {}~{}", t, pos, addr, len); - assert(pos.is_viewable()); + DEBUGT("{} {}~{}", t, *cursor, addr, len); + assert(cursor->is_viewable()); auto c = get_context(t); auto btree = co_await get_btree(cache, c); - auto &cursor = pos.get_effective_cursor(); - auto iter = btree.make_partial_iter(c, cursor); + auto iter = btree.make_partial_iter(c, *cursor); lba_map_val_t val{len, P_ADDR_ZERO, EXTENT_DEFAULT_REF_COUNT, 0}; auto p = co_await btree.insert(c, iter, addr, val); ceph_assert(p.second); diff --git a/src/crimson/os/seastore/lba/btree_lba_manager.h b/src/crimson/os/seastore/lba/btree_lba_manager.h index b6d5419aa62..7f0598d1098 100644 --- a/src/crimson/os/seastore/lba/btree_lba_manager.h +++ b/src/crimson/os/seastore/lba/btree_lba_manager.h @@ -77,7 +77,7 @@ public: alloc_extent_ret reserve_region( Transaction &t, - LBAMapping pos, + LBACursorRef pos, laddr_t laddr, extent_len_t len) final; diff --git a/src/crimson/os/seastore/lba_manager.h b/src/crimson/os/seastore/lba_manager.h index e1191aa2a5e..845dfbf4509 100644 --- a/src/crimson/os/seastore/lba_manager.h +++ b/src/crimson/os/seastore/lba_manager.h @@ -122,7 +122,7 @@ public: */ virtual alloc_extent_ret reserve_region( Transaction &t, - LBAMapping pos, + LBACursorRef cursor, laddr_t hint, extent_len_t len) = 0; diff --git a/src/crimson/os/seastore/transaction_manager.h b/src/crimson/os/seastore/transaction_manager.h index 77a6ba6625c..8b9eb9c90da 100644 --- a/src/crimson/os/seastore/transaction_manager.h +++ b/src/crimson/os/seastore/transaction_manager.h @@ -536,7 +536,7 @@ public: pos = co_await pos.refresh(); auto pin = co_await lba_manager->reserve_region( t, - std::move(pos), + pos.get_effective_cursor_ref(), hint, len ); -- 2.47.3