Squeak lockup

Bill Schwab schwabw at sprynet.com
Wed Jun 5 03:50:41 UTC 2002


Andreas,

> The short version is that I'm very interested in seeing how one 
> debugs such things in Squeak. 
It is very hard to do this. Partly because you need low-level VM 
tools
to look into some of these issues. In particular if they only happen 
on
some machines it means that some assertion of the VM about its 
hosting
platform is wrong. And that means you need to go into it very low-
level.
There are some features that might help (I added for instance the
ability to list all socket state in order to find some of the socket
related problems) but this doesn't replace a debugger. Since all of 
the
VM maintainers test quite heavily across all (available) flavours of
OSes it also means that the code "ought to work" as it is.
-------------------------
I'm not quite as convinced as you that my code is innocent and the 
VM is to blame :)   Either way, the machine in question is a 
challenge.  It's a slow machine (P200) with an ancient Win95 
installation, but some seriously nice components, especially for 
when it was built.  Considering just my MIDI application agenda, 
the plan was to use the machine to see if I could establish 
communication with my digiital piano and do some interactive stuff 
in Squeak.  It works, modulo the lockups, so I'm now slowly 
juggling hardware to put something faster on a wheeled cart - the 
UPS arrived today.  I haven't quite decided which machine to 
mobilize, but, worst case it will be a P2-400 with 320MB of RAM.

As far as debugging tools, the socket thing sounds great.  Squeak 
shows what it was doing at the time of a crash; I can't really 
comment on the usefulness of the result because I haven't needed 
it for any of my code.

The lockup scenario seems to be unaddressed though.  Would it 
be possible to generate a call stack for each Process, perhaps by 
command on the system menu?  In my lockup, the VM appears to 
still be responsive, so it would nice to get some idea of what the 
Smalltalk code is trying to do.  One thing I'm considering is that I 
botched the morphic side of the project, causing either deadlock or 
running out of space.

Making a long story short, I'm considering Squeak as my escape 
vehicle should I need to leave Windows.  There are things that I 
would change about Squeak, but, so far, I'm finding that I would be 
able to work with it.  The next question is whether it can handle the 
kinds of things I'd ask of it. To find out, I'm doing some things with 
MIDI and 3D graphics.  Neither project pays any bills (yet 
anyway<g>), but they are non-trivial.  One thing that I'm missing so 
far is networking.  My planned "update server" lost some steam 
because I had to create most of the functionality in Dolphin as part 
of my Win2k rollout.

> To date, I've gotten crash dumps 
> >from it by enabling 3D hardware acceleration on a particular 
> machine;

That machine wouldn't use a graphics card which is based on a 
RIVA TNT
chip on Win98, would it?! I just got a totally weird crash report from
such a configuration but since I don't have access to it it's almost
impossible to do remote debugging.
--------------------

It's listed in the control panel as ATI 3D Rage Pro (atir) - I'm not 
sure what that means re the chipset you've listed, but, I can look 
into it if some kind soul doesn't beat me to it.  The machine is 
running Win98.  

The documentation that came with the card is not at all matching 
up with the information reported by the control panel.  If necessary, 
I can always open the box and look at the chips.

Bill


Wilhelm K. Schwab, Ph.D.
bills at anest4.anest.ufl.edu
(352) 846-1285



More information about the Squeak-dev mailing list