GRAN_ALIGNED should check that the memory block's alignment (log2align) is correct, not that the memory block is aligned with the granule size. This fixes DEBUGASSERT() in mm_granfree: _assert: Assertion failed : at file: mm_gran/mm_granfree.c:49 The assertion triggers if granule size != alignment.