From c65c6d83bd0a1c3d00bcbe8ce4fc1bc10ddc947e Mon Sep 17 00:00:00 2001 From: daanx Date: Mon, 23 Dec 2024 16:31:42 -0800 Subject: [PATCH] fix guard page size --- ide/vs2022/mimalloc.vcxproj | 2 +- src/arena.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ide/vs2022/mimalloc.vcxproj b/ide/vs2022/mimalloc.vcxproj index 87e866bb..63bc7d1d 100644 --- a/ide/vs2022/mimalloc.vcxproj +++ b/ide/vs2022/mimalloc.vcxproj @@ -190,7 +190,7 @@ true Default ../../include - MI_DEBUG=3;MI_GUARDED=0;%(PreprocessorDefinitions); + MI_DEBUG=3;MI_GUARDED=0;MI_SECURE=4;%(PreprocessorDefinitions); CompileAsCpp false stdcpp20 diff --git a/src/arena.c b/src/arena.c index 3349abb1..9ae44d85 100644 --- a/src/arena.c +++ b/src/arena.c @@ -720,10 +720,10 @@ static mi_page_t* mi_arenas_page_singleton_alloc(mi_heap_t* heap, size_t block_s mi_tld_t* const tld = heap->tld; const bool os_align = (block_alignment > MI_PAGE_MAX_OVERALLOC_ALIGN); const size_t info_size = (os_align ? MI_PAGE_ALIGN : mi_page_info_size()); - #if MI_ARENA_GUARD_PAGE_SIZE == 0 + #if MI_SECURE < 2 const size_t slice_count = mi_slice_count_of_size(info_size + block_size); #else - const size_t slice_count = mi_slice_count_of_size(_mi_align_up(info_size + block_size, MI_ARENA_GUARD_PAGE_SIZE) + MI_ARENA_GUARD_PAGE_SIZE); + const size_t slice_count = mi_slice_count_of_size(_mi_align_up(info_size + block_size, _mi_os_secure_guard_page_size()) + _mi_os_secure_guard_page_size()); #endif mi_page_t* page = mi_arenas_page_alloc_fresh(tld->subproc, slice_count, block_size, block_alignment, req_arena, tld->thread_seq);