From 1434f532d0fded3bd255efa946059d18caab1509 Mon Sep 17 00:00:00 2001 From: Jonathan Bradley Date: Wed, 27 Aug 2025 15:04:22 -0400 Subject: pkmem: ensure bucket size is factor of alignment --- pkmem.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkmem.h b/pkmem.h index 7807e3c..76c0e00 100644 --- a/pkmem.h +++ b/pkmem.h @@ -226,6 +226,9 @@ pk_mem_bucket_create(const char* description, int64_t sz, enum PK_MEMBUCKET_FLAG // [000-127] pk_membucket // [128-191] 64 bytes of data LOL // [192-511] 20 pk_memblocks (20 is worst-case, start 16, 4 per 64 bytes) + if ((sz % 64) > 0) { + sz += 64 - (sz % 64); + } assert(sz >= 512 && "[pkmem.h] bucket too small to track allocation data"); struct pk_membucket* bkt = (struct pk_membucket*)aligned_alloc(64, sz); if (bkt == NULL) return NULL; -- cgit v1.2.3