<br><br><div class="gmail_quote">On Thu, Jul 22, 2010 at 2:42 PM, Paul DeBruicker <span dir="ltr"><<a href="mailto:pdebruic@gmail.com">pdebruic@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<br>
Hi Eliot,<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">
just looks like the OS/run-time is not letting the program set a handler for<br>
SIGUSR2 and/or not allowing it to be caught. This is a deal breaker. Why<br>
it's happening I don't know, but currently Cog's heartbeat on linux depends<br>
on being able to catch SIGUSR2.<br>
<br></div>
HTH<br>
Eliot<br>
<br>
</blockquote>
<br>
<br>
<br>
>From reading this:<br>
<br>
<a href="http://manpages.ubuntu.com/manpages/lucid/man7/signal.7.html" target="_blank">http://manpages.ubuntu.com/manpages/lucid/man7/signal.7.html</a><br>
<br>
it looks like Ubuntu defaults to terminate the program on SIGUSR2.<br>
<br>
<br>
Would it be appropriate to use sigaction() somewhere in the VM code to override the OS's default setting for SIGUSR2? </blockquote><div><br></div><div>That's exactly what the code does. Look at uses of TICKER_SIGNAL in platforms/unix/vm/sqUnixHeartbeat.c. WJat Derek points out is that on certain (I thought long gone) LinuxThreads implementations SIGUSR1 & SIGUSR2 are reserved by the threads implementation and used internally. One cant use them in these contexts. So that means a) finding out at compile time whether we're in this regime or not and b) choosing some alternative signals (one for the ticker (USR2), one for dumping all stacks (USR2)).</div>
<div><br></div><div>best</div><div>Eliot</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">I think you could change it from terminate to ignore.<br>
<br>
<a href="http://opengroup.org/onlinepubs/007908775/xsh/sigaction.html" target="_blank">http://opengroup.org/onlinepubs/007908775/xsh/sigaction.html</a><br>
<br>
For SIGUSR2 the int sig value is 12<br>
<br>
Or do you know if its an environment setting I can change?<br>
<br>
Thanks for your help<br><font color="#888888">
<br>
Paul<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
</font></blockquote></div><br>