Bug#474402: sbcl: FTBFS on amd64: mmap: Cannot allocate memory: ensure_space: failed to validate 8589869056 bytes at 0x1000000000

Kurt Roeckx kurt at roeckx.be
Sat Apr 5 15:04:03 UTC 2008


On Sat, Apr 05, 2008 at 03:36:29PM +0100, Thiemo Seufer wrote:
> Kurt Roeckx wrote:
> > Package: sbcl
> > Version: 1:1.0.15.0-2
> > Severity: serious
> > 
> > Hi,
> > 
> > Your package is failing to build on amd64 with the following error:
> > //entering make-host-1.sh
> > //building cross-compiler, and doing first genesis
> > mmap: Cannot allocate memory
> > ensure_space: failed to validate 8589869056 bytes at 0x1000000000
> > (hint: Try "ulimit -a"; maybe you should increase memory limits.)
> > make: *** [build-arch-stamp] Error 1
> > 
> > 
> > The buildd host does not have 8GB of RAM + swap available.
> 
> As mentioned on IRC, the alternative is to allow memory overcommit
> via sysctl, or simply by

I seem to have missed your messages.  I found them now.

> echo 1 >/proc/sys/vm/overcommit_memory

I've actually set it to 2 recently because it wasn't the first time that
some package caused the OOM to kill random things and someone had to go
to the box and reboot it.  This should give you about 5 GB you can
allocate.

> This is no new behaviour of SBCL, and rather a implementation limitation
> than a bug. SBCL needs to reserve a fixed contiguous address space for
> its GC-managed memory. Linux 2.6 kernels reserve by default memory or
> backing store count for such mmapped-but-not-used address space
> reservations.

So can that be reduced somehow?

I've created a swap file of 4 GB, which should give about 9 GB that can
be allocated, and rescheduled sbcl.  But I'd like to remove that.


Kurt






More information about the pkg-common-lisp-devel mailing list