[Pkg-apache-commits] r863 - in /branches/lenny-apache2: README.Debian changelog patches/00list patches/067_check_pollset_create_error.dpatch
sf at alioth.debian.org
sf at alioth.debian.org
Fri Jan 9 20:17:45 UTC 2009
Author: sf
Date: Fri Jan 9 20:17:44 2009
New Revision: 863
URL: http://svn.debian.org/wsvn/pkg-apache/?sc=1&rev=863
Log:
fix segfault when hitting the new epoll limit, and add some hint to README.Debian
Added:
branches/lenny-apache2/patches/067_check_pollset_create_error.dpatch
Modified:
branches/lenny-apache2/README.Debian
branches/lenny-apache2/changelog
branches/lenny-apache2/patches/00list
Modified: branches/lenny-apache2/README.Debian
URL: http://svn.debian.org/wsvn/pkg-apache/branches/lenny-apache2/README.Debian?rev=863&op=diff
==============================================================================
--- branches/lenny-apache2/README.Debian (original)
+++ branches/lenny-apache2/README.Debian Fri Jan 9 20:17:44 2009
@@ -291,3 +291,16 @@
to your Apache configuration. Of course, this has to be ajusted to the actual
filenames you use.
+
+6) Message "Couldn't create pollset in child" in error log
+
+On kernels since 2.6.27.8, the value in
+
+ /proc/sys/fs/epoll/max_user_instances
+
+needs to be larger than the value configured for MaxClients. It can be set
+on boot by adding a line like
+
+ fs.epoll.max_user_instances=1024
+
+to /etc/sysctl.conf.
Modified: branches/lenny-apache2/changelog
URL: http://svn.debian.org/wsvn/pkg-apache/branches/lenny-apache2/changelog?rev=863&op=diff
==============================================================================
--- branches/lenny-apache2/changelog (original)
+++ branches/lenny-apache2/changelog Fri Jan 9 20:17:44 2009
@@ -1,3 +1,12 @@
+apache2 (2.2.9-10+lenny2) UNRELEASED; urgency=low
+
+ * Report an error instead instead of segfaulting when apr_pollset_create
+ fails (PR 46467). On Linux kernels since 2.6.27.8, the value in
+ /proc/sys/fs/epoll/max_user_instances needs to be larger than the
+ value of MaxClients in the Apache configuration.
+
+ -- Stefan Fritsch <sf at debian.org> Fri, 09 Jan 2009 21:06:45 +0100
+
apache2 (2.2.9-10+lenny1) testing-proposed-updates; urgency=low
* Regression fix from upstream svn for mod_proxy:
Modified: branches/lenny-apache2/patches/00list
URL: http://svn.debian.org/wsvn/pkg-apache/branches/lenny-apache2/patches/00list?rev=863&op=diff
==============================================================================
--- branches/lenny-apache2/patches/00list (original)
+++ branches/lenny-apache2/patches/00list Fri Jan 9 20:17:44 2009
@@ -25,6 +25,7 @@
064_mod_proxy_http_timeout.dpatch
065_mod_proxy_segfault_PR45792.dpatch
066_mpm_worker_segfault_PR45605.dpatch
+067_check_pollset_create_error.dpatch
099_config_guess_sub_update
200_cp_suexec.dpatch
201_build_suexec-custom.dpatch
Added: branches/lenny-apache2/patches/067_check_pollset_create_error.dpatch
URL: http://svn.debian.org/wsvn/pkg-apache/branches/lenny-apache2/patches/067_check_pollset_create_error.dpatch?rev=863&op=file
==============================================================================
--- branches/lenny-apache2/patches/067_check_pollset_create_error.dpatch (added)
+++ branches/lenny-apache2/patches/067_check_pollset_create_error.dpatch Fri Jan 9 20:17:44 2009
@@ -1,0 +1,21 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP:see http://svn.apache.org/viewvc?view=rev&revision=732414
+--- a/server/mpm/prefork/prefork.c 2009/01/07 18:21:23 732413
++++ b/server/mpm/prefork/prefork.c 2009/01/07 18:22:07 732414
+@@ -484,8 +484,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 Pkg-apache-commits
mailing list