Skip to content
This repository was archived by the owner on Dec 4, 2023. It is now read-only.

Commit e60906c

Browse files
committed
Stop using MAP_NORESERVE on FreeBSD
See: v8/v8@a87e1dc https://reviews.freebsd.org/D848 This fixes #231
1 parent 0fa4464 commit e60906c

2 files changed

Lines changed: 32 additions & 0 deletions

File tree

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
### Unreleased
22

33
* Dramatically reduce the binary size on macOS (thanks @aviat)
4+
* Fix compilation on FreeBSD 11 #231
45

56
### 3.16.14.16, 3.16.14.17 - 2016-04-28:
67

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
diff --git a/src/platform-freebsd.cc b/src/platform-freebsd.cc
2+
index 62653b4ca7..a64dd98ce5 100644
3+
--- a/src/platform-freebsd.cc
4+
+++ b/src/platform-freebsd.cc
5+
@@ -368,7 +368,7 @@ VirtualMemory::VirtualMemory(size_t size, size_t alignment)
6+
void* reservation = mmap(OS::GetRandomMmapAddr(),
7+
request_size,
8+
PROT_NONE,
9+
- MAP_PRIVATE | MAP_ANON | MAP_NORESERVE,
10+
+ MAP_PRIVATE | MAP_ANON,
11+
kMmapFd,
12+
kMmapFdOffset);
13+
if (reservation == MAP_FAILED) return;
14+
@@ -440,7 +440,7 @@ void* VirtualMemory::ReserveRegion(size_t size) {
15+
void* result = mmap(OS::GetRandomMmapAddr(),
16+
size,
17+
PROT_NONE,
18+
- MAP_PRIVATE | MAP_ANON | MAP_NORESERVE,
19+
+ MAP_PRIVATE | MAP_ANON,
20+
kMmapFd,
21+
kMmapFdOffset);
22+
23+
@@ -470,7 +470,7 @@ bool VirtualMemory::UncommitRegion(void* base, size_t size) {
24+
return mmap(base,
25+
size,
26+
PROT_NONE,
27+
- MAP_PRIVATE | MAP_ANON | MAP_NORESERVE | MAP_FIXED,
28+
+ MAP_PRIVATE | MAP_ANON | MAP_FIXED,
29+
kMmapFd,
30+
kMmapFdOffset) != MAP_FAILED;
31+
}

0 commit comments

Comments
 (0)