diff options
author | Daan <daanl@outlook.com> | 2022-04-14 11:28:40 -0700 |
---|---|---|
committer | Daan <daanl@outlook.com> | 2022-04-14 11:28:40 -0700 |
commit | dd929659ab4329ed3d42c423e692ab418cff1856 (patch) | |
tree | b6c0b786714503cb1c70e5fec6c4807a5138b4f9 | |
parent | 4b95e8ea1db86a043661dde229b3bdfbc7cd07ce (diff) |
fix wrong assertion
-rw-r--r-- | src/page.c | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -780,10 +780,8 @@ static mi_page_t* mi_large_huge_page_alloc(mi_heap_t* heap, size_t size) { mi_page_queue_t* pq = (is_huge ? NULL : mi_page_queue(heap, block_size)); mi_page_t* page = mi_page_fresh_alloc(heap, pq, block_size); if (page != NULL) { - const size_t bsize = mi_page_usable_block_size(page); // note: includes padding mi_assert_internal(mi_page_immediate_available(page)); - mi_assert_internal(bsize >= size); - + if (pq == NULL) { // huge pages are directly abandoned mi_assert_internal(_mi_page_segment(page)->kind == MI_SEGMENT_HUGE); @@ -794,6 +792,8 @@ static mi_page_t* mi_large_huge_page_alloc(mi_heap_t* heap, size_t size) { else { mi_assert_internal(_mi_page_segment(page)->kind != MI_SEGMENT_HUGE); } + + const size_t bsize = mi_page_usable_block_size(page); // note: not `mi_page_block_size` to account for padding if (bsize <= MI_LARGE_OBJ_SIZE_MAX) { mi_heap_stat_increase(heap, large, bsize); mi_heap_stat_counter_increase(heap, large_count, 1); |