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: v12.2.2~153^2~5 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=efcf874295db0a68c43a9fd0a3a20cc3dcdf050a;p=ceph.git os/bluestore: require that bluefs_alloc_size be multiple of min_alloc_size Signed-off-by: Sage Weil (cherry picked from commit 5b47ac59816894e983a98d3da8b5415d569c6663) --- diff --git a/src/os/bluestore/BlueStore.cc b/src/os/bluestore/BlueStore.cc index 3566005cd01..d04872788dc 100644 --- a/src/os/bluestore/BlueStore.cc +++ b/src/os/bluestore/BlueStore.cc @@ -4545,6 +4545,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