]> Cypherpunks repositories - gostls13.git/commitdiff
runtime: improve mmap return value checking for netbsd/openbsd
authorJoel Sing <jsing@google.com>
Fri, 22 Mar 2013 15:15:52 +0000 (02:15 +1100)
committerJoel Sing <jsing@google.com>
Fri, 22 Mar 2013 15:15:52 +0000 (02:15 +1100)
Rather than just checking for ENOMEM, check for a return value of less
than 4096, so that we catch other errors such as EACCES and EINVAL.

R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/7942043

src/pkg/runtime/mem_netbsd.c
src/pkg/runtime/mem_openbsd.c

index 63a57b94a3b86f49f1d2fbc30c8b49d8d8a95c40..e5bdac0ef65ebbf5b11ae7940210bc6788bfc8f8 100644 (file)
@@ -50,7 +50,7 @@ runtime·SysReserve(void *v, uintptr n)
                return v;
 
        p = runtime·mmap(v, n, PROT_NONE, MAP_ANON|MAP_PRIVATE, -1, 0);
-       if(p == (void*)ENOMEM)
+       if(p < (void*)4096)
                return nil;
        return p;
 }
index 63a57b94a3b86f49f1d2fbc30c8b49d8d8a95c40..e5bdac0ef65ebbf5b11ae7940210bc6788bfc8f8 100644 (file)
@@ -50,7 +50,7 @@ runtime·SysReserve(void *v, uintptr n)
                return v;
 
        p = runtime·mmap(v, n, PROT_NONE, MAP_ANON|MAP_PRIVATE, -1, 0);
-       if(p == (void*)ENOMEM)
+       if(p < (void*)4096)
                return nil;
        return p;
 }