From: Samuel Just Date: Tue, 16 Sep 2025 16:48:34 +0000 (-0700) Subject: crimson/.../transaction_manager: convert get_pin to coroutine X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=0360bb57f20c53590066f05283fca0b3d6102299;p=ceph-ci.git crimson/.../transaction_manager: convert get_pin to coroutine Signed-off-by: Samuel Just --- diff --git a/src/crimson/os/seastore/transaction_manager.h b/src/crimson/os/seastore/transaction_manager.h index 1ba7599051f..96fa4d967b1 100644 --- a/src/crimson/os/seastore/transaction_manager.h +++ b/src/crimson/os/seastore/transaction_manager.h @@ -116,11 +116,9 @@ public: laddr_t offset) { LOG_PREFIX(TransactionManager::get_pin); SUBDEBUGT(seastore_tm, "{} ...", t, offset); - return lba_manager->get_mapping(t, offset, false - ).si_then([FNAME, &t](LBAMapping pin) { - SUBDEBUGT(seastore_tm, "got {}", t, pin); - return pin; - }); + auto pin = co_await lba_manager->get_mapping(t, offset, false); + SUBDEBUGT(seastore_tm, "got {}", t, pin); + co_return pin; } /** @@ -133,21 +131,17 @@ public: laddr_t laddr) { LOG_PREFIX(TransactionManager::get_containing_pin); SUBDEBUGT(seastore_tm, "{} ...", t, laddr); - return lba_manager->get_mapping(t, laddr, true - ).si_then([FNAME, &t](LBAMapping pin) { - SUBDEBUGT(seastore_tm, "got {}", t, pin); - return pin; - }); + auto pin = co_await lba_manager->get_mapping(t, laddr, true); + SUBDEBUGT(seastore_tm, "got {}", t, pin); + co_return pin; } get_pin_ret get_pin(Transaction &t, LogicalChildNode &extent) { LOG_PREFIX(TransactionManager::get_pin); SUBDEBUGT(seastore_tm, "{} ...", t, extent); - return lba_manager->get_mapping(t, extent - ).si_then([FNAME, &t](LBAMapping pin) { - SUBDEBUGT(seastore_tm, "got {}", t, pin); - return pin; - }); + auto pin = co_await lba_manager->get_mapping(t, extent); + SUBDEBUGT(seastore_tm, "got {}", t, pin); + co_return pin; } /** @@ -163,12 +157,9 @@ public: extent_len_t length) { LOG_PREFIX(TransactionManager::get_pins); SUBDEBUGT(seastore_tm, "{}~0x{:x} ...", t, offset, length); - return lba_manager->get_mappings( - t, offset, length - ).si_then([FNAME, &t](lba_mapping_list_t pins) { - SUBDEBUGT(seastore_tm, "got {} pins", t, pins.size()); - return pins; - }); + auto pins = co_await lba_manager->get_mappings(t, offset, length); + SUBDEBUGT(seastore_tm, "got {} pins", t, pins.size()); + co_return pins; } /**