Mailing List Archive

svn commit: r1916929 - in /httpd/httpd/trunk/server/mpm: event/event.c worker/worker.c
Author: ylavic
Date: Fri Apr 12 13:16:40 2024
New Revision: 1916929

URL: http://svn.apache.org/viewvc?rev=1916929&view=rev
Log:
mpm_event,mpm_worker: Comment about pollset sizing when APR_POLLSET_WAKEABLE.

Follow up to r1916925 and r1916926.


Modified:
httpd/httpd/trunk/server/mpm/event/event.c
httpd/httpd/trunk/server/mpm/worker/worker.c

Modified: httpd/httpd/trunk/server/mpm/event/event.c
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/server/mpm/event/event.c?rev=1916929&r1=1916928&r2=1916929&view=diff
==============================================================================
--- httpd/httpd/trunk/server/mpm/event/event.c (original)
+++ httpd/httpd/trunk/server/mpm/event/event.c Fri Apr 12 13:16:40 2024
@@ -2628,7 +2628,10 @@ static void setup_threads_runtime(void)
clean_child_exit(APEXIT_CHILDFATAL);
}

- /* Create the main pollset */
+ /* Create the main pollset. When APR_POLLSET_WAKEABLE is asked we account
+ * for the wakeup pipe explicitely with pollset_size+1 because some pollset
+ * implementations don't do it implicitely in APR.
+ */
pollset_flags = APR_POLLSET_THREADSAFE | APR_POLLSET_NOCOPY |
APR_POLLSET_WAKEABLE | APR_POLLSET_NODEFAULT;
for (i = 0; i < sizeof(good_methods) / sizeof(good_methods[0]); i++) {

Modified: httpd/httpd/trunk/server/mpm/worker/worker.c
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/server/mpm/worker/worker.c?rev=1916929&r1=1916928&r2=1916929&view=diff
==============================================================================
--- httpd/httpd/trunk/server/mpm/worker/worker.c (original)
+++ httpd/httpd/trunk/server/mpm/worker/worker.c Fri Apr 12 13:16:40 2024
@@ -909,7 +909,10 @@ static void setup_threads_runtime(void)
clean_child_exit(APEXIT_CHILDFATAL);
}

- /* Create the main pollset */
+ /* Create the main pollset. When APR_POLLSET_WAKEABLE is asked we account
+ * for the wakeup pipe explicitely with num_listensocks+1 because some
+ * pollset implementations don't do it implicitely in APR.
+ */
pollset_flags = APR_POLLSET_NOCOPY | APR_POLLSET_WAKEABLE;
rv = apr_pollset_create(&worker_pollset, num_listensocks + 1, pruntime,
pollset_flags);