(In reply to Michael Catanzaro from comment #18) > Here's a debug patch:
It's missing <cstring> include for strerror..
diff -up webkitgtk-2.20.0/Source/bmalloc/bmalloc/VMAllocate.h.bmalloc_debug webkitgtk-2.20.0/Source/bmalloc/bmalloc/VMAllocate.h --- webkitgtk-2.20.0/Source/bmalloc/bmalloc/VMAllocate.h.bmalloc_debug 2018-02-19 08:45:33.000000000 +0100 +++ webkitgtk-2.20.0/Source/bmalloc/bmalloc/VMAllocate.h 2018-03-14 09:26:14.977674938 +0100 @@ -35,6 +35,10 @@ #include <sys/mman.h> #include <unistd.h>
+#include <cstdio> +#include <errno.h> +#include <cstring> + #if BOS(DARWIN) #include <mach/vm_page_size.h> #include <mach/vm_statistics.h> @@ -122,8 +126,10 @@ inline void* tryVMAllocate(size_t vmSize { vmValidate(vmSize); void* result = mmap(0, vmSize, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON | BMALLOC_NORESERVE, BMALLOC_VM_TAG, 0); - if (result == MAP_FAILED) - return nullptr; + if (result == MAP_FAILED) { + fprintf(stderr, "%s: mmap failed: vmSize=%zu errno=%d (%s)", __FUNCTION__, vmSize, errno, strerror(errno)); + return nullptr; + } return result; }
(In reply to Michael Catanzaro from comment #18)
> Here's a debug patch:
It's missing <cstring> include for strerror..
diff -up webkitgtk- 2.20.0/ Source/ bmalloc/ bmalloc/ VMAllocate. h.bmalloc_ debug webkitgtk- 2.20.0/ Source/ bmalloc/ bmalloc/ VMAllocate. h 2.20.0/ Source/ bmalloc/ bmalloc/ VMAllocate. h.bmalloc_ debug 2018-02-19 08:45:33.000000000 +0100 2.20.0/ Source/ bmalloc/ bmalloc/ VMAllocate. h 2018-03-14 09:26:14.977674938 +0100
--- webkitgtk-
+++ webkitgtk-
@@ -35,6 +35,10 @@
#include <sys/mman.h>
#include <unistd.h>
+#include <cstdio> page_size. h> statistics. h> size_t vmSize (vmSize) ;
+#include <errno.h>
+#include <cstring>
+
#if BOS(DARWIN)
#include <mach/vm_
#include <mach/vm_
@@ -122,8 +126,10 @@ inline void* tryVMAllocate(
{
vmValidate
void* result = mmap(0, vmSize, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON | BMALLOC_NORESERVE, BMALLOC_VM_TAG, 0);
- if (result == MAP_FAILED)
- return nullptr;
+ if (result == MAP_FAILED) {
+ fprintf(stderr, "%s: mmap failed: vmSize=%zu errno=%d (%s)", __FUNCTION__, vmSize, errno, strerror(errno));
+ return nullptr;
+ }
return result;
}