mirror of
https://github.com/microsoft/mimalloc.git
synced 2025-05-06 15:29:31 +03:00
fix wrong assertion
This commit is contained in:
parent
4b95e8ea1d
commit
dd929659ab
1 changed files with 3 additions and 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_queue_t* pq = (is_huge ? NULL : mi_page_queue(heap, block_size));
|
||||||
mi_page_t* page = mi_page_fresh_alloc(heap, pq, block_size);
|
mi_page_t* page = mi_page_fresh_alloc(heap, pq, block_size);
|
||||||
if (page != NULL) {
|
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(mi_page_immediate_available(page));
|
||||||
mi_assert_internal(bsize >= size);
|
|
||||||
|
|
||||||
if (pq == NULL) {
|
if (pq == NULL) {
|
||||||
// huge pages are directly abandoned
|
// huge pages are directly abandoned
|
||||||
mi_assert_internal(_mi_page_segment(page)->kind == MI_SEGMENT_HUGE);
|
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 {
|
else {
|
||||||
mi_assert_internal(_mi_page_segment(page)->kind != MI_SEGMENT_HUGE);
|
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) {
|
if (bsize <= MI_LARGE_OBJ_SIZE_MAX) {
|
||||||
mi_heap_stat_increase(heap, large, bsize);
|
mi_heap_stat_increase(heap, large, bsize);
|
||||||
mi_heap_stat_counter_increase(heap, large_count, 1);
|
mi_heap_stat_counter_increase(heap, large_count, 1);
|
||||||
|
|
Loading…
Add table
Reference in a new issue