[Vm-dev] Fwd: [Pharo-dev] Pharo 3.0 not responding to mouse or keyboard after launch

Nicolas Cellier nicolas.cellier.aka.nice at gmail.com
Mon Jan 13 09:13:40 UTC 2014


---------- Forwarded message ----------
From: Martin McClure <martin at hand2mouse.com>
Date: 2014/1/13
Subject: Re: [Pharo-dev] Pharo 3.0 not responding to mouse or keyboard
after launch
To: Pharo Development List <pharo-dev at lists.pharo.org>


On 01/12/2014 10:18 PM, Hernán Morales Durand wrote:

> That sounds really weird. Having to launch from GUI to start a working
> image is not very convenient.
> Let us know if you have any other findings.
>

Thanks. After some digging, I think I've got it.

The pharo executable is launched by the bash shell via a fork followed by
an execve. The signal mask is inherited from the parent process, and
preserved across the execve. Pharo does not modify the signal mask except
once:

rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0

which only appears to deal with one real-time signal.

In my case, somehow one set of shells has SIGALRM masked, and another set
of shells does not have it masked. Pharo seems to rely on SIGALRMs from the
interval timer to wake it up periodically (every 2 ms) presumably to see
whether it has any work to do.

So no SIGALRMS delivered, not much happens.

I have no idea why my shells are masking various signals, but it seems
clear that it would be a good idea for the VM to initialize its signal mask
explicitly rather than depending on the parent process to have it set
sanely.

So I count this one as a VM bug. If someone better connected with the VM
community would report it as such, I'd appreciate it.

Thanks for all the suggestions while I dug to the bottom of this one.

Regards,

-Martin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20140113/2f69d65c/attachment.htm


More information about the Vm-dev mailing list