[Vm-dev] VM crash in the Squeak3D plugin

Eliot Miranda eliot.miranda at gmail.com
Sun Dec 29 14:29:44 UTC 2019


Hi Stéphane,

> On Dec 28, 2019, at 10:20 AM, Stéphane Rollandin <lecteur at zogotounga.net> wrote:
> 
> Hello all,
> 
> For my first post on this list, I would like to submit the bug that prevents one of my game (this one: http://www.zogotounga.net/comp/guardians.htm) to work reliably.

Welcome!

> I spent quite some time on this, and I ended up with a nice and concise way to crash the Squeak3D plugin. The image is available at:
> 
> http://www.zogotounga.net/swap/crashlab3.zip
> 
> Instructions to crash the VM are detailed therein.
> 
> The 3D scene is very simple, there are only three objects.

Thanks; this should help!

> The crash
> seems related to a race condition, because inserting a simple delay in
> the code prevents it - this is detailed in the image itself.

Interesting.  I shall see if it simulates.

> I have spent days studying the Smalltalk code, and could not see
> anything wrong with what is sent to the plugin. It looks to my
> uninformed eyes as a problem of shared memory, where one rasterizing
> operation messes up with another happening in parallel (although no
> processed is being forked on the Smalltalk side).

Right.  There is no parallelism here.  AIUI (which isn’t very well at all) the Squeak3D plugin is a pure output engine.  But I know very very little about rasterisers and the theory behind the code.  Those that do (Ronie? Craig?), please take a look.  This is one of Andreas’ great creations.  It would be lovely to have it working properly.

> Stef


More information about the Vm-dev mailing list