diff --git a/core/mempool.cc b/core/mempool.cc
index 23ae2dc22750c050e5463be4e74d9f0494522593..012b56c61088e5f7d71eaa9a9c36a219c6946570 100644
--- a/core/mempool.cc
+++ b/core/mempool.cc
@@ -158,7 +158,8 @@ pool::~pool()
 {
 }
 
-const size_t pool::max_object_size = page_size - sizeof(pool::page_header);
+// FIXME: handle larger sizes better, while preserving alignment:
+const size_t pool::max_object_size = page_size / 2;
 const size_t pool::min_object_size = sizeof(pool::free_object);
 
 pool::page_header* pool::to_header(free_object* object)