From: Matan Breizman Date: Thu, 7 Aug 2025 13:10:09 +0000 (+0000) Subject: crimson/os/seastore: test_mkfs() into coroutines X-Git-Tag: testing/wip-vshankar-testing-20250917.131748-debug~16^2~9 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=7a50999ec0981212f4c90543952536ed8f956ad3;p=ceph-ci.git crimson/os/seastore: test_mkfs() into coroutines Signed-off-by: Matan Breizman --- diff --git a/src/crimson/os/seastore/seastore.cc b/src/crimson/os/seastore/seastore.cc index ec85237fc4c..e47df96327a 100644 --- a/src/crimson/os/seastore/seastore.cc +++ b/src/crimson/os/seastore/seastore.cc @@ -398,24 +398,16 @@ SeaStore::mkfs_ertr::future<> SeaStore::test_mkfs(uuid_d new_osd_fsid) INFO("uuid={} ...", new_osd_fsid); ceph_assert(seastar::this_shard_id() == primary_core); - return read_meta("mkfs_done" - ).then([this, new_osd_fsid, FNAME](auto tuple) { - auto [done, value] = tuple; - if (done == 0) { - ERROR("failed"); - return seastar::now(); - } - return shard_stores.local().mkfs_managers( - ).safe_then([this, new_osd_fsid] { - return prepare_meta(new_osd_fsid); - }).safe_then([FNAME] { - INFO("done"); - }).handle_error( - crimson::ct_error::assert_all{ - "Invalid error in SeaStore::mkfs" - } - ); - }); + // todo: read_meta to return errorator + auto [done, value] = co_await read_meta("mkfs_done"); + if (done == 0) { + ERROR("failed"); + co_return; + } + co_await shard_stores.local().mkfs_managers().handle_error( + crimson::ct_error::assert_all{"Invalid error in SeaStore::mkfs"}); + co_await prepare_meta(new_osd_fsid); + INFO("done"); } seastar::future<> SeaStore::prepare_meta(uuid_d new_osd_fsid)