runtime: Do not reserve huge amount of swap on 32 bit architectures.
authorIan Lance Taylor <ian@gcc.gnu.org>
Fri, 15 Feb 2013 18:55:09 +0000 (18:55 +0000)
committerIan Lance Taylor <ian@gcc.gnu.org>
Fri, 15 Feb 2013 18:55:09 +0000 (18:55 +0000)
commit3ab98a471c4b1aec557583e674beacd15be4955d
tree69367e678dd8ce0bf0495ccdf1a1712913949390
parent4dddfc74f331653b453b9123ecf3c93a58a9aade
runtime: Do not reserve huge amount of swap on 32 bit architectures.

The mmap() call which reserves the arena should have MAP_NORESERVE
flag as in typical cases this memory will never be (fully) needed.
This matters in environments which do not do Linux style memory
overcommit, such as OpenIndiana/OpenSolaris/Solaris.

The MAP_NORESERVE flag does not exist on all operating systems
(for example FreeBSD). Therefore we define it to zero value in
case it does not exist.

Fixes issue 21.

From-SVN: r196088
libgo/runtime/mem.c