From: Yingxin Cheng Date: Wed, 2 Apr 2025 06:32:19 +0000 (+0800) Subject: crimson/os/seastore: misc adjustments X-Git-Tag: v20.3.0~129^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=9c73fc66db61f07ebea351fe21b4ddec89f14b57;p=ceph.git crimson/os/seastore: misc adjustments Signed-off-by: Yingxin Cheng --- 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 0062d8efc8dc..a14e18a56c21 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 @@ -435,13 +435,16 @@ BtreeLBAManager::_alloc_extents( ceph_assert(alloc_info.val.is_paddr()); assert(alloc_info.val == iter.get_val().pladdr); assert(alloc_info.len == iter.get_val().len); + assert(alloc_info.extent->is_logical()); if (alloc_info.extent->has_laddr()) { + // see TM::remap_pin() assert(alloc_info.key == alloc_info.extent->get_laddr()); assert(alloc_info.key == iter.get_key()); } else { + // see TM::alloc_non_data_extent() + // TM::alloc_data_extents() alloc_info.extent->set_laddr(iter.get_key()); } - alloc_info.extent->set_laddr(iter.get_key()); } ceph_assert(inserted); rets.emplace_back(iter.get_pin(c)); diff --git a/src/crimson/os/seastore/transaction_manager.h b/src/crimson/os/seastore/transaction_manager.h index 978e28d99c40..62880df08383 100644 --- a/src/crimson/os/seastore/transaction_manager.h +++ b/src/crimson/os/seastore/transaction_manager.h @@ -210,9 +210,9 @@ public: ).si_then([this, FNAME, &t, offset, length] (auto pin) -> read_extent_ret { if (length != pin->get_length() || !pin->get_val().is_real()) { - SUBERRORT(seastore_tm, "{}~0x{:x} {} got wrong {}", + SUBERRORT(seastore_tm, "{}~0x{:x} {} got wrong pin {}", t, offset, length, T::TYPE, *pin); - ceph_assert(0 == "Should be impossible"); + ceph_abort("Impossible"); } return this->read_pin(t, std::move(pin)); }); @@ -235,9 +235,9 @@ public: ).si_then([this, FNAME, &t, offset] (auto pin) -> read_extent_ret { if (!pin->get_val().is_real()) { - SUBERRORT(seastore_tm, "{} {} got wrong {}", + SUBERRORT(seastore_tm, "{} {} got wrong pin {}", t, offset, T::TYPE, *pin); - ceph_assert(0 == "Should be impossible"); + ceph_abort("Impossible"); } return this->read_pin(t, std::move(pin)); });