From 25d4807f507274d421966e06cd960d1b50366c5a Mon Sep 17 00:00:00 2001 From: Kris Katterjohn Date: Fri, 4 Oct 2019 20:39:37 -0500 Subject: [PATCH] mmapped heaps: fix the file descriptor argument to mmap for the BSDs On the BSDs, the file descriptor passed to mmap when using MAP_ANON must be -1. Passing 0 causes mmap to fail. --- gc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gc.c b/gc.c index 8802fbdf..0d938bdd 100644 --- a/gc.c +++ b/gc.c @@ -501,7 +501,7 @@ sexp_heap sexp_make_heap (size_t size, size_t max_size, size_t chunk_size) { sexp_heap h; #if SEXP_USE_MMAP_GC h = mmap(NULL, sexp_heap_pad_size(size), PROT_READ|PROT_WRITE|PROT_EXEC, - MAP_ANON|MAP_PRIVATE, 0, 0); + MAP_ANON|MAP_PRIVATE, -1, 0); if (h == MAP_FAILED) return NULL; #else h = sexp_malloc(sexp_heap_pad_size(size));