Re: [RFC] Zend Signal Handling
| From: | Lukas Kahwe Smith | Date: | Wed, 30 Jul 2008 13:11:20 +0000 |
| Subject: | Re: [RFC] Zend Signal Handling | ||
| References: | 1 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-39460@lists.php.net to get a copy of this message | ||
On 30.07.2008, at 01:58, Lucas Nealan wrote:
I've updated the patch for Zend Signal Handling, the latest version is available on the wiki rfc page: http://wiki.php.net/rfc/zendsignals The update solves the reentrance issue with using the a zend linked list in the default signal handler. I've also added a debug only check, at least for now, that will output a debug string during shutdown if for some reason any of the handlers installed during startup are no longer present. I've added a discoveries section describing other features that may cause issue with Zend Signals or should be incorporated. These include SIGCHILD handling and pctl_signal. Please read on the wiki for the complete details. Full list of changes: - Replaced zend ll queue with a pre-allocated internal queue (thx pcntl) - Added shutdown check for replaced signal handlers - Added errno protection to the existing sigchld_handler in main.c - Zend Signal handling is now enabled by default if sigaction is present during a non-zts build. - Made the patch more TSRMLS correct even though ZTS won't work - Critical section in zend_signal_handler_unblock via sigprocmask for queue mgmt and so it's zend_signal_handler_defer call will be afforded the same signal queuing as when called by the kernel I've limitedly tested these changes and everything seems normal in gdb. Unless I hear otherwise I believe this to be ready to commit.Not so happy that it was not possible to get this committed over the weekend. Johannes did a quick review and it seems like it has enough support from people and is low risk enough to get committed now. Lets hope no extension stumbled over this one .. @Dmitry: Can you get this applied today? regards, Lukas Kahwe Smith mls@pooteeweet.org