Hello Michael, I have been writing a handler for SIGILL and SIGSEGV which restarts the program using execv() if an exception occurs. The handler never returns. >From the description of SA_NODEFER it was not evident that even if the process is restarted with execv() the signal remains masked if SA_NODEFER is not set as a flag. It think this behavior deserves mentioning on the sigaction.2 manpage, e.g. "Do not prevent the signal from being received from within its own signal handler. A signal handler call is not terminated by calling execv() as the pending signal property is inherited by the new process." On the signal.7 manpage there is a paragraph "Signal mask and pending signals". Here pending signals are mentioned. There is a sentence "Between the time when it is generated and when it is delivered a signal is said to be pending." To me "delivered" means the instance when the signal handler is called and not the instance when the signal handler returns. So said sentence should be reworked, e.g. "Between the time when it is generated and when the signal handler returns a signal is said to be pending." Best regards Heinrich