Victor Kryukov <victor.kryukov@...> writes:
> Hello list,
> I've an (non-root) account on a machine where I host my website. I've
> installed sbcl locally; when I start sbcl, sometimes it starts ok,
> but sometimes it produces the following:
> [letsmeet@... letsmeet]$ sbcl
> mmap: wanted 536870912 bytes at 0x9000000, actually mapped at 0x98d2000
> ensure_space: failed to validate 536870912 bytes at 0x09000000
> (hint: Try "ulimit -a"; maybe you should increase memory limits.)
> $ uname -a
> Linux <hostname> 2.4.21-27.ELsmp #1 SMP Wed Dec 1 21:59:02 EST 2004
> i686 i686 i386 GNU/Linux
> If the latter happens, then after a couple of tries, sbcl launches
> and works stably enough. Could somebody please clarify what's going
> on here?
Sounds like an issue with the memory map randomization that some
kernels do to "improve" security. In normal kernels this randomization
is only done in versions 2.6.11 and later, for which SBCL implements a
workaround. But the kernel on that machine seems to be a Red Hat
kernel, which had that feature enabled even in earlier releases. Try
running sbcl as "setarch i386 sbcl" or "setarch i386 -R sbcl"
(depending on how old that RHEL installation really is).