Hi David,<div><br></div><div>    what&#39;s the reason for shutting down interval timers around fork?  What was the issue that necessitated this in the first place?  We&#39;re likely getting bit by this and I want to try and keep the solution as simple as possible.</div>
<div><br></div><div>best</div><div>Eliot<br><br><div class="gmail_quote">On Sat, Sep 4, 2010 at 7:20 AM, David T. Lewis <span dir="ltr">&lt;<a href="mailto:lewis@mail.msen.com">lewis@mail.msen.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><br>
I think that you have confirmed that #forkSqueak does not work on a Cog VM.<br>
The likely reason for this is that #forkSqueak involves temporarily disabling<br>
timer signals from the operating system, then reenabling them in both the<br>
child and parent after the fork(). The Cog VM is using a different underlying<br>
timer mechanism (pthreads etc) so the current #forkSqueak mechanism would<br>
probably need to be redone for Cog. I have not looked in to this at all,<br>
but I did expect that this might be a problem and I think you have confirmed<br>
it in the log below.<br>
<br>
Dave<br>
<br>
On Fri, Sep 03, 2010 at 09:52:29AM -0300, Casimiro de Almeida Barreto wrote:<br>
&gt;<br>
&gt;  Here&#39;s the log:<br>
&gt;<br>
&gt; Untrustedir /home/casimiro/Desenvolvimento/cog.work/secure<br>
&gt; UnixOSPrReceiversessionIdentvaria DependentsArray(a UnixProcess with pid<br>
&gt; 3490)<br>
&gt; fier:     #[202 58grimReaper: siona Process in [] in [] in<br>
&gt; UnixOSProcessAccessor&gt;&gt;<br>
&gt; grimReaperProcessigChldSemaphore:     a Semaphore(a Process in [] in []<br>
&gt; in Uni<br>
&gt; UnixOSPrReceiversessionIdentifier: epend#[202 58 13 UnixProcess with pid<br>
&gt; 3490)<br>
&gt; 6]          grimReaper: sio a Process in [] in [] in UnixOSProcessAccessor&gt;&gt;<br>
&gt; grimReaperProcessigChldSemaphore:     a Semaphore(a Process in [] in []<br>
&gt; in Uni<br>
&gt; UnixOSPrReceivercanObtainSessionIdenpend#[202 58 13 86]xProcess with pid<br>
&gt; 3490)<br>
&gt; ifierFromPlugin:grimReaper:     a Process in [] in [] in<br>
&gt; UnixOSProcessAccessor&gt;&gt;<br>
&gt; grimReaperProcessigChldSemaphore:     a Semaphore(a Process in [] in []<br>
&gt; in Uni<br>
&gt; UnixOSPrReceiversessionIdentifier: epend#[2sArray(a UnixProcess with pid<br>
&gt; 3490)<br>
&gt; 2 58 13 86]     grimReaper: siona Process in [] in [] in<br>
&gt; UnixOSProcessAccessor&gt;&gt;<br>
&gt; grimReaperProcessigChldSemaphore:     a Semaphore(a Process in [] in []<br>
&gt; in Uni<br>
&gt; UnixProcess&gt;&gt;redirect:to:- - - - - - - - - - - - - - - - - - - - -<br>
&gt; [] in PipeableOSProcess<br>
&gt; class&gt;&gt;forkSqueakAndDoThenQuit:errorPipelineStream:headl<br>
&gt; Compiler&gt;&gt;evaluate:in:to:notifyiningTo:toPrecision:maxEpochs:reportingEach:ss:<br>
&gt; PluggableTextMorphPlus(PluggableTextMorph)&gt;&gt;handleEdit:<br>
&gt; MorphicEventh(Morph)&gt;&gt;handleEvent:nt:ndTo:<br>
&gt; [] in HandMhandleFocusEvent:nt:using::with:h:<br>
&gt; ...etc...&gt;&gt;handleEvent:nt::clear:r:ing:<br>
&gt;<br>
&gt;<br>
&gt; BTW, XDisplayControlPlugin explodes cogvm at my face... but seems to be<br>
&gt; required by TranscriptStream (trying to figure out what&#39;s  going on<br>
&gt; there... then I&#39;ll report the problem properly).<br>
&gt;<br>
<br>
<br>
<br>
</blockquote></div><br></div>