Skip to content

Improve documentation for aligned allocation on heap with registered arena and add contract tests - #1409

Open
OscarTHZhang wants to merge 2 commits into
microsoft:dev3from
OscarTHZhang:OscarTHZhang/add-some-additional-test
Open

OscarTHZhang wants to merge 2 commits into
microsoft:dev3from
OscarTHZhang:OscarTHZhang/add-some-additional-test

Conversation

@OscarTHZhang

Copy link
Copy Markdown

For alignment allocations on heaps (mi_heap_malloc_aligned, mi_heap_zalloc_aligned, mi_heap_calloc_aligned, and mi_heap_realloc_aligned), there is an internal max limit on the alignment of 64 KiB. When the heap is from a registered arena, once the caller requests an alignment over this 64 KiB-limit, even if there is space available in the arena-backed heap, the request would fail and return a NULL pointer because it cannot fallback to OS-backed memory for over 64KiB alignment request.

This PR adds contract API tests to validate this behavior and improve the documentation over these functions to make it clear that there is a 64 KiB alignment limit when using with arena-backed heaps.

The issue is discussed in #1406

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant