Hi,<div><br></div><div>After more testing I confirmed that the Java VM that executes my cyrus init script blocks the SIGQUIT signal.</div><div><br></div><div>The following patch ensures all signals are unblocked before trying to set signal handlers. It fixes the problem in a clean way as it seems to be a good practice to ensure signals are not blocked before setting signal handlers.</div>
<div><br></div><div><div>diff --git a/master/master.c b/master/master.c</div><div>index 823be06..f2ca72e 100644</div><div>--- a/master/master.c</div><div>+++ b/master/master.c</div><div>@@ -1064,7 +1064,11 @@ void sigalrm_handler(int sig __attribute__((unused)))</div>
<div> void sighandler_setup(void)</div><div> {</div><div>     struct sigaction action;</div><div>-    </div><div>+    sigset_t all_signals;</div><div>+</div><div>+    sigfillset(&all_signals);</div><div>+    sigprocmask(SIG_UNBLOCK, &all_signals, NULL);</div>
<div>+</div><div>     sigemptyset(&action.sa_mask);</div><div>     action.sa_flags = 0;</div><div> </div></div><div>Regards,</div><div><div>Thomas.<br><br><div class="gmail_quote">On Sun, Oct 9, 2011 at 7:39 PM, Thomas Cataldo <span dir="ltr"><<a href="mailto:tcataldo@gmail.com">tcataldo@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">Hi,<div><br></div><div>Thanks for all your infos. Your objections regarding my patch had me looking into how I run the script.</div>
<div><br></div><div>I run the script from a Java VM. Understanding that you don't have the problem, I played with the "-Xrs" of the JVM that prevents it from interfering with sigquit... without any luck.</div>

<div><br></div><div>Any idea how I can get a better insight at my problem ?</div><div><br></div>
</blockquote></div><br></div></div>