Merge pull request #65 from devnexen/mi_mmap_prot_max_support

Using BSD new PROT_MAX mmap to block page address wider promotions
This commit is contained in:
Daan
2019-07-02 16:21:13 -07:00
committed by GitHub

View File

@@ -105,7 +105,11 @@ static void* mi_mmap(void* addr, size_t size, int extra_flags, mi_stats_t* stats
flags |= MAP_FIXED;
#endif
}
p = mmap(addr, size, (PROT_READ | PROT_WRITE), flags, -1, 0);
int pflags = PROT_READ | PROT_WRITE;
#if defined(PROT_MAX)
pflags |= PROT_MAX(PROT_READ | PROT_WRITE); // BSD
#endif
p = mmap(addr, size, pflags, flags, -1, 0);
if (p == MAP_FAILED) p = NULL;
if (addr != NULL && p != addr) {
mi_munmap(p, size);