From 2ae278e7b42c8637c46131b0e1ca0897ff17aafa Mon Sep 17 00:00:00 2001 From: Yingxin Cheng Date: Mon, 8 Aug 2022 13:30:11 +0800 Subject: [PATCH] crimson/os/seastore/transaction_manager: return future when enoent Otherwise there will be a segmentation fault. Signed-off-by: Yingxin Cheng --- src/crimson/os/seastore/transaction_manager.cc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/crimson/os/seastore/transaction_manager.cc b/src/crimson/os/seastore/transaction_manager.cc index 81c79524a3b5..5941d9ca4c21 100644 --- a/src/crimson/os/seastore/transaction_manager.cc +++ b/src/crimson/os/seastore/transaction_manager.cc @@ -622,7 +622,9 @@ TransactionManager::get_extents_if_live_ret TransactionManager::get_extents_if_l }); }); }).handle_error_interruptible(crimson::ct_error::enoent::handle([] { - return std::list(); + return get_extents_if_live_ret( + interruptible::ready_future_marker{}, + std::list()); }), crimson::ct_error::pass_further_all{}); } else { return lba_manager->get_physical_extent_if_live( -- 2.47.3