diff options
| author | Jonathan Bradley <jcb@pikum.xyz> | 2025-08-27 15:04:22 -0400 |
|---|---|---|
| committer | Jonathan Bradley <jcb@pikum.xyz> | 2025-08-27 15:04:22 -0400 |
| commit | 1434f532d0fded3bd255efa946059d18caab1509 (patch) | |
| tree | 3a0c212396c18dd0da20357ffad79c1fe3835e57 | |
| parent | 8086417171fd782e84d1e31a2dbfdf6ed7f97c75 (diff) | |
pkmem: ensure bucket size is factor of alignment
| -rw-r--r-- | pkmem.h | 3 |
1 files changed, 3 insertions, 0 deletions
@@ -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; |
