1
0
mirror of https://github.com/php/php-src.git synced 2026-04-13 02:52:48 +02:00

Merge branch 'PHP-7.3'

This commit is contained in:
Nikita Popov
2018-09-07 12:10:15 +02:00

View File

@@ -423,11 +423,15 @@ static void *zend_mm_mmap_fixed(void *addr, size_t size)
#ifdef _WIN32
return VirtualAlloc(addr, size, MEM_COMMIT | MEM_RESERVE, PAGE_READWRITE);
#else
int flags = MAP_PRIVATE | MAP_ANON;
#if defined(MAP_EXCL)
flags |= MAP_FIXED | MAP_EXCL;
#endif
/* MAP_FIXED leads to discarding of the old mapping, so it can't be used. */
void *ptr = mmap(addr, size, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON /*| MAP_POPULATE | MAP_HUGETLB*/, -1, 0);
void *ptr = mmap(addr, size, PROT_READ | PROT_WRITE, flags /*| MAP_POPULATE | MAP_HUGETLB*/, -1, 0);
if (ptr == MAP_FAILED) {
#if ZEND_MM_ERROR
#if ZEND_MM_ERROR && !defined(MAP_EXCL)
fprintf(stderr, "\nmmap() failed: [%d] %s\n", errno, strerror(errno));
#endif
return NULL;