On 2012-02-28 22:05, Ben Rockefeller wrote:
Hello,
I have a module which creates a thread using pthread_create and then
registers for SIGRTMIN+4 signal from another process. Problem is I do not
see a signal callback when the signal is sent to me. I only see it when I
try to kill apache where just before dying it hits the signal callback.
So something in Apache is blocking the signal. I am using worker MPM.
What could be the issue. I do not have much leeway into changing the design
of the module (the threading model comes from a separate lib which I link
into the module)...but I can change to use a different signal than
SIGRTMIN+4, etc.
I can also change apache and recompile apache if needed.
Please let me know if you have any suggestions. I have been stuck at this
for a while now :-(
Thanks
In which hook do you create your thread and you register your signal
handler?
Right after executing the child_init callbacks, apache blocks the
threads from receiving most signals.
Check the list of blocked/ignored/caught signals using "ps axs" in a shell.
Sorin