From 513bb4f3f21b739ea3f751680716b0fbcda9c3e1 Mon Sep 17 00:00:00 2001 From: Zhang Song Date: Wed, 3 Apr 2024 17:10:31 +0800 Subject: [PATCH] crimson/os/seastore/btree_lba_manager: update_refcount returns the refcount of intermediate mapping Signed-off-by: Zhang Song --- .../os/seastore/lba_manager/btree/btree_lba_manager.cc | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/src/crimson/os/seastore/lba_manager/btree/btree_lba_manager.cc b/src/crimson/os/seastore/lba_manager/btree/btree_lba_manager.cc index 7a02dad06d881..6bce91ffe50f3 100644 --- a/src/crimson/os/seastore/lba_manager/btree/btree_lba_manager.cc +++ b/src/crimson/os/seastore/lba_manager/btree/btree_lba_manager.cc @@ -704,15 +704,11 @@ BtreeLBAManager::update_refcount( ); } return fut.si_then([map_value, mapping=std::move(mapping)] - (auto removed) mutable { + (auto decref_intermediate_res) mutable { if (map_value.pladdr.is_laddr() - && removed) { + && decref_intermediate_res) { return update_refcount_ret_bare_t{ - ref_update_result_t{ - map_value.refcount, - removed->addr, - removed->length - }, + *decref_intermediate_res, std::move(mapping) }; } else { -- 2.39.5