You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by Jeff Trawick <tr...@attglobal.net> on 2001/11/12 21:12:26 UTC

Re: cvs commit: apr/threadproc/unix signals.c

trawick@apache.org writes:

> trawick     01/11/12 11:47:31
> 
>   Modified:    .        CHANGES
>                threadproc/unix signals.c
>   Log:
>   Fix apr_setup_signal_thread() so that threads don't block
>   synchronous signals (e.g., SIGSEGV).  It is a programming error
>   to do so, and some platforms (e.g., Solaris, AIX) don't call any
>   registered signal handler when such signals are blocked.
>   
>   Thanks are due to Dick Dunbar <RL...@pacbell.net>, who pointed
>   this out to me in the context of debugging a threaded module for
>   Apache 1.3.

a couple of points...

1) on my Solaris 8 account, I now get coredumps in the right place
   using the worker MPM and a module of mine which generates invalid
   storage references on demand; before compiling with only this
   change, I didn't get a coredump from the same test

2) it is unclear to me at the moment whether or not we should keep the
   synchronous signals out of the set we pass to sigwait()...  just in
   case this is needed, I extracted the knowledge of how to remove
   synchronous signals into a separate function, ready to be called by
   apr_signal_thread() if the need ever arises

-- 
Jeff Trawick | trawick@attglobal.net | PGP public key at web site:
       http://www.geocities.com/SiliconValley/Park/9289/
             Born in Roswell... married an alien...