SOURCES: apache-pollset-segv.patch (NEW) - from upstream, prefork: log an e...
hawk
hawk at pld-linux.org
Fri Feb 13 13:20:27 CET 2009
Author: hawk Date: Fri Feb 13 12:20:27 2009 GMT
Module: SOURCES Tag: HEAD
---- Log message:
- from upstream, prefork: log an error instead of segfaulting when child
startup fails due to pollset creation failures
---- Files affected:
SOURCES:
apache-pollset-segv.patch (NONE -> 1.1) (NEW)
---- Diffs:
================================================================
Index: SOURCES/apache-pollset-segv.patch
diff -u /dev/null SOURCES/apache-pollset-segv.patch:1.1
--- /dev/null Fri Feb 13 13:20:28 2009
+++ SOURCES/apache-pollset-segv.patch Fri Feb 13 13:20:21 2009
@@ -0,0 +1,17 @@
+--- server/mpm/prefork/prefork.c 2009/01/12 11:37:23 733697
++++ server/mpm/prefork/prefork.c 2009/01/12 11:37:32 733698
+@@ -517,8 +517,12 @@
+ (void) ap_update_child_status(sbh, SERVER_READY, (request_rec *) NULL);
+
+ /* Set up the pollfd array */
+- /* ### check the status */
+- (void) apr_pollset_create(&pollset, num_listensocks, pchild, 0);
++ status = apr_pollset_create(&pollset, num_listensocks, pchild, 0);
++ if (status != APR_SUCCESS) {
++ ap_log_error(APLOG_MARK, APLOG_EMERG, status, ap_server_conf,
++ "Couldn't create pollset in child; check system or user limits");
++ clean_child_exit(APEXIT_CHILDSICK); /* assume temporary resource issue */
++ }
+
+ for (lr = ap_listeners, i = num_listensocks; i--; lr = lr->next) {
+ apr_pollfd_t pfd = { 0 };
================================================================
More information about the pld-cvs-commit
mailing list