From 86627f8bd33e5385a1b0e59bb2efac3970c51ee2 Mon Sep 17 00:00:00 2001 From: Zhang Song Date: Thu, 22 Aug 2024 18:56:51 +0800 Subject: [PATCH] crimson/os/seastore: ensure the block size of device is always greater than laddr_t::UNIT_SIZE Signed-off-by: Zhang Song --- src/crimson/os/seastore/seastore.cc | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/crimson/os/seastore/seastore.cc b/src/crimson/os/seastore/seastore.cc index 9c06c2d949ae2..2ac74aead444e 100644 --- a/src/crimson/os/seastore/seastore.cc +++ b/src/crimson/os/seastore/seastore.cc @@ -253,6 +253,8 @@ SeaStore::mount_ertr::future<> SeaStore::mount() ceph_assert(seastar::this_shard_id() == primary_core); return device->mount( ).safe_then([this] { + ceph_assert(device->get_sharded_device().get_block_size() + >= laddr_t::UNIT_SIZE); auto &sec_devices = device->get_sharded_device().get_secondary_devices(); return crimson::do_for_each(sec_devices, [this](auto& device_entry) { device_id_t id = device_entry.first; @@ -266,6 +268,8 @@ SeaStore::mount_ertr::future<> SeaStore::mount() ).then([this, magic, sec_dev = std::move(sec_dev)]() mutable { return sec_dev->mount( ).safe_then([this, sec_dev=std::move(sec_dev), magic]() mutable { + ceph_assert(sec_dev->get_sharded_device().get_block_size() + >= laddr_t::UNIT_SIZE); boost::ignore_unused(magic); // avoid clang warning; assert(sec_dev->get_sharded_device().get_magic() == magic); secondaries.emplace_back(std::move(sec_dev)); -- 2.39.5