From: Sage Weil Date: Fri, 8 Sep 2017 22:05:29 +0000 (-0400) Subject: os/bluestore: require that bluefs_alloc_size be multiple of min_alloc_size X-Git-Tag: v13.0.1~920^2~4 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=5b47ac59816894e983a98d3da8b5415d569c6663;p=ceph.git os/bluestore: require that bluefs_alloc_size be multiple of min_alloc_size Signed-off-by: Sage Weil --- diff --git a/src/os/bluestore/BlueStore.cc b/src/os/bluestore/BlueStore.cc index 868c0f6a4db9..9c2a8c72fe77 100644 --- a/src/os/bluestore/BlueStore.cc +++ b/src/os/bluestore/BlueStore.cc @@ -4555,6 +4555,13 @@ int BlueStore::_open_db(bool create) bdev->get_size() * (cct->_conf->bluestore_bluefs_min_ratio + cct->_conf->bluestore_bluefs_gift_ratio); initial = MAX(initial, cct->_conf->bluestore_bluefs_min); + if (cct->_conf->bluefs_alloc_size % min_alloc_size) { + derr << __func__ << " bluefs_alloc_size 0x" << std::hex + << cct->_conf->bluefs_alloc_size << " is not a multiple of " + << "min_alloc_size 0x" << min_alloc_size << std::dec << dendl; + r = -EINVAL; + goto free_bluefs; + } // align to bluefs's alloc_size initial = P2ROUNDUP(initial, cct->_conf->bluefs_alloc_size); // put bluefs in the middle of the device in case it is an HDD