From 5b57b098e6e337e5616ec4d030c10e345e871aa3 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Wed, 23 Dec 2015 10:21:25 -0500 Subject: [PATCH] os/bluestore: allocate shouldn't fail if reserve succeeded Signed-off-by: Sage Weil --- src/os/bluestore/BlueFS.cc | 4 +++- src/os/bluestore/BlueStore.cc | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/os/bluestore/BlueFS.cc b/src/os/bluestore/BlueFS.cc index 060d8e3672d07..600784df47e64 100644 --- a/src/os/bluestore/BlueFS.cc +++ b/src/os/bluestore/BlueFS.cc @@ -1077,8 +1077,10 @@ int BlueFS::_allocate(unsigned id, uint64_t len, vector *ev) e.bdev = id; int r = alloc[id]->allocate(left, g_conf->bluefs_alloc_size, hint, &e.offset, &e.length); - if (r < 0) + if (r < 0) { + assert(0 == "allocate failed... wtf"); return r; + } if (!ev->empty() && ev->back().end() == e.offset) ev->back().length += e.length; else diff --git a/src/os/bluestore/BlueStore.cc b/src/os/bluestore/BlueStore.cc index 9a32fd5cbd312..7cf2ef9d2184a 100644 --- a/src/os/bluestore/BlueStore.cc +++ b/src/os/bluestore/BlueStore.cc @@ -1430,8 +1430,10 @@ int BlueStore::_balance_bluefs_freespace(vector *extents) bluestore_extent_t e; r = alloc->allocate(MIN(gift, 1ull<<31), min_alloc_size, 0, &e.offset, &e.length); - if (r < 0) + if (r < 0) { + assert(0 == "allocate failed, wtf"); return r; + } dout(1) << __func__ << " gifting " << e << " to bluefs" << dendl; extents->push_back(e); -- 2.39.5