Skip to content

Commit 0732a3d

Browse files
committed
crimson/os/seastore/transaction_manager: fix get_extents_if_live
It should not assume the paddr type from get_mappings is SEGMENT. Signed-off-by: Yingxin Cheng <[email protected]>
1 parent d512f62 commit 0732a3d

File tree

1 file changed

+3
-0
lines changed

1 file changed

+3
-0
lines changed

src/crimson/os/seastore/transaction_manager.cc

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -757,6 +757,9 @@ TransactionManager::get_extents_if_live(
757757
LBAMappingRef& pin) -> Cache::get_extent_iertr::future<>
758758
{
759759
auto pin_paddr = pin->get_val();
760+
if (pin_paddr.get_addr_type() != paddr_types_t::SEGMENT) {
761+
return seastar::now();
762+
}
760763
auto &pin_seg_paddr = pin_paddr.as_seg_paddr();
761764
auto pin_paddr_seg_id = pin_seg_paddr.get_segment_id();
762765
// auto pin_len = pin->get_length();

0 commit comments

Comments
 (0)