View | Details | Raw Unified | Return to bug 235735 | Differences between
and this patch

Collapse All | Expand All

(-)lang/go14/files/patch-src_runtime_mem__freebsd.c (+20 lines)
Line 0 Link Here
1
--- src/runtime/mem_freebsd.c.orig	2019-09-05 12:28:09 UTC
2
+++ src/runtime/mem_freebsd.c
3
@@ -67,7 +67,7 @@ runtime·SysReserve(void *v, uintptr n, bool *reserved
4
 	}
5
 
6
 	*reserved = true;
7
-	p = runtime·mmap(v, n, PROT_NONE, MAP_ANON|MAP_PRIVATE, -1, 0);
8
+	p = runtime·mmap(v, n, PROT_NONE, MAP_ANON|MAP_FIXED|MAP_PRIVATE, -1, 0);
9
 	if(p < (void*)4096)
10
 		return nil;
11
 	return p;
12
@@ -82,7 +82,7 @@ runtime·SysMap(void *v, uintptr n, bool reserved, uin
13
 
14
 	// On 64-bit, we don't actually have v reserved, so tread carefully.
15
 	if(!reserved) {
16
-		p = runtime·mmap(v, n, PROT_READ|PROT_WRITE, MAP_ANON|MAP_PRIVATE, -1, 0);
17
+		p = runtime·mmap(v, n, PROT_READ|PROT_WRITE, MAP_ANON|MAP_FIXED|MAP_PRIVATE, -1, 0);
18
 		if(p == (void*)ENOMEM)
19
 			runtime·throw("runtime: out of memory");
20
 		if(p != v) {

Return to bug 235735