[Vm-dev] unresponsive 64-bit Spur StackInterpreter, except...

David T. Lewis lewis at mail.msen.com
Tue Jul 14 02:02:01 UTC 2015


On Mon, Jul 13, 2015 at 05:11:29PM -0700, Eliot Miranda wrote:
>  
> Hi All,
> 
>      I've a bit of a mystery and could do with suggestions of what to look
> for.  The 64-bit Spur StackInterpreter VM on linux was working fine up
> until a few months ago.  Now it doesn't respond to input, unless that is, I
> put various breakpoints on various functions along the chain from aioPool
> through to allocateInputEvent to signalExternalSemaphore to
> doSignalExternalSemaphores when ... it can suddenly start working?!  I'm
> planning to add a -debugeventchain flag or some such and if set write a
> different character to stderr form each function along the chain so I can
> see where the blockage is, but I fear heisenbugs; doing output could
> perturb the system into working (given that gdb can perturb the system
> also).  And I'm lazy so I wondered if anyone had a good idea.  I've thought
> of it being thread-related but that's not the case as all event processing
> in X11 happens on the main VM thread.  Anyway, I'm open to suggestions.

This is almost certainly unhelpful, but IIRC the data structures that
represent input events are generated primarily from slang, hence dependent
on sizeof(sqInt), but some of the platform sources (Mac OS tree, maybe
elsewhere) are written in C with 32 bit assumptions. The 64-bit image
(format 68002) that I have been using for the last 6 months or so does
indeed seem to have problems with input event processing. I need to wiggle
the mouse from time to time when doing e.g. a trunk update. I suspect
(but have not confirmed) that this may be some kind of problem related
to the input event data structures.

So FWIW: Has anything changed in the C code generator and/or support
code in the last few months that might affect the data structures that
represent events passed from the VM to the image?

Dave



More information about the Vm-dev mailing list