From: Jeff Trawick Date: Fri, 8 Jun 2001 16:53:10 +0000 (+0000) Subject: the input handle to the pod (used by child processes) needs to be non-blocking X-Git-Tag: 2.0.19~105 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fa787dcc297cc66cb52781bbf48c79c5069ef891;p=thirdparty%2Fapache%2Fhttpd.git the input handle to the pod (used by child processes) needs to be non-blocking before this, no requests could be processed by prefork since after connect from the client prefork would block reading the pod the write handle to the pod probably doesn't have to be non-blocking, but getting EAGAIN for the pipe-full condition, rather than blocking, is nice for now since it would tend to indicate that something is FUBAR; on the other hand, this probably needs to change in order to support more than 4K workers git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89310 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/server/mpm_common.c b/server/mpm_common.c index fa389bea876..28ecd128dac 100644 --- a/server/mpm_common.c +++ b/server/mpm_common.c @@ -347,6 +347,7 @@ AP_DECLARE(apr_status_t) ap_mpm_pod_open(apr_pool_t *p, ap_pod_t **pod) *pod = apr_palloc(p, sizeof(**pod)); rv = apr_file_pipe_create(&((*pod)->pod_in), &((*pod)->pod_out), p); + apr_file_pipe_timeout_set((*pod)->pod_in, 0); apr_file_pipe_timeout_set((*pod)->pod_out, 0); (*pod)->p = p; return rv;