From 2e61f52d2264addf3d3a7e21fa3dcba05ecfeabe Mon Sep 17 00:00:00 2001 From: dzaima Date: Tue, 26 Dec 2023 00:45:14 +0200 Subject: [PATCH] use MAP_EXCL on FreeBSD OpenBSD should be fine as is, as it by default respects the hint if possible (I believe, at least, looking at its man page) --- src/jit/nvm_x86_64.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/jit/nvm_x86_64.c b/src/jit/nvm_x86_64.c index a6e61f37..b82cec1a 100644 --- a/src/jit/nvm_x86_64.c +++ b/src/jit/nvm_x86_64.c @@ -49,6 +49,8 @@ static void* mmap_nvm(u64 sz) { int noreplace = 0; #ifdef MAP_FIXED_NOREPLACE noreplace|= MAP_FIXED_NOREPLACE; + #elif __FreeBSD__ + noreplace|= MAP_FIXED|MAP_EXCL; #endif void* c = mmap((void*)loc, sz, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_NORESERVE|MAP_PRIVATE|MAP_ANONYMOUS|noreplace, -1, 0); if (c==MAP_FAILED) continue;