[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.

Cheers,
   - 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