[Vm-dev] newDelta >0 failed in sqUnixMemory

Andreas Raab andreas.raab at gmx.de
Fri Jan 30 08:00:57 UTC 2009

Since you're compiling the VM yourself, you might want to add a guard 
that catches the condition and prints out the environmental values 
(oldLimit, delta, newSize, newDelta). I would suspect that this is a 
signed/unsigned issue with memory being allocated somewhere close to the 
2GB barrier and then flipping from positive to negative. Since newSize 
and newDelta are declared int, this could easily happen.

   - Andreas

Damien Cassou wrote:
> Hi,
> with a recent stock pharo image and a new VM compiled from svn on
> Linux, I always get
> squeak: /tmp/squeak-svn/platforms/unix/vm/sqUnixMemory.c:172:
> uxGrowMemoryBy: Assertion `newDelta >= 0' failed.
> Aborted
> This does not happen on Squeak 3.9 nor 3.10. This did not happen
> yesterday when I was on Ubuntu Hardy. Now, I'm on Intrepid, GCC 4.3.2
> and it crashes after 3 seconds of work on any Pharo image.
> You may want to know that to compile the vm, I was obliged to change
> sqUnixFBDevMousePS2.c to make use of the 'write(2)' return value
> because my compiler didn't want to compile if write(2) return value
> was unused.

More information about the Vm-dev mailing list