summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--slabs.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/slabs.c b/slabs.c
index efa4880..c54ae60 100644
--- a/slabs.c
+++ b/slabs.c
@@ -217,7 +217,8 @@ static void *get_page_from_global_pool(void) {
static int do_slabs_newslab(const unsigned int id) {
slabclass_t *p = &slabclass[id];
slabclass_t *g = &slabclass[SLAB_GLOBAL_PAGE_POOL];
- int len = settings.slab_reassign ? settings.item_size_max
+ int len = (settings.slab_reassign || settings.slab_chunk_size_max != settings.slab_page_size)
+ ? settings.slab_page_size
: p->size * p->perslab;
char *ptr;