From db037ab1a97ed47b5e25cdd25d6d402d545f7ead Mon Sep 17 00:00:00 2001 From: Jeff Trawick Date: Thu, 29 Jan 2004 13:46:38 +0000 Subject: [PATCH] merge fix for worker MPM parent process crash to stable branch Reviewed by: stoddard, jorton git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/APACHE_2_0_BRANCH@102444 13f79535-47bb-0310-9956-ffa450edef68 --- CHANGES | 4 ++++ STATUS | 6 +----- server/mpm/worker/worker.c | 3 ++- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/CHANGES b/CHANGES index dda7e01d9f8..7091fc192c9 100644 --- a/CHANGES +++ b/CHANGES @@ -1,4 +1,8 @@ Changes with Apache 2.0.49 + + *) worker MPM: fix stack overlay bug that could cause the parent + process to crash. [Jeff Trawick] + *) Win32: Add Win32DisableAcceptEx directive. This Windows NT/2000/CP directive is useful to work around bugs in some third party layered service providers like virus scanners, diff --git a/STATUS b/STATUS index 92de31e09a3..39082d66d10 100644 --- a/STATUS +++ b/STATUS @@ -1,5 +1,5 @@ APACHE 2.0 STATUS: -*-text-*- -Last modified at [$Date: 2004/01/29 09:50:19 $] +Last modified at [$Date: 2004/01/29 13:46:37 $] Release: @@ -74,10 +74,6 @@ RELEASE SHOWSTOPPERS: but actually resolving the host would not. To catch the check via retcode, you have to specify the NI_NAMEREQD flag. - worker MPM parent process crash - http://cvs.apache.org/viewcvs.cgi/httpd-2.0/server/mpm/worker/worker.c?r1=1.145&r2=1.146 - +1: trawick, stoddard, jorton - PATCHES TO BACKPORT FROM 2.1 [ please place file names and revisions from HEAD here, so it is easy to identify exactly what the proposed changes are! ] diff --git a/server/mpm/worker/worker.c b/server/mpm/worker/worker.c index b0e7c32a0e1..4fa2460660d 100644 --- a/server/mpm/worker/worker.c +++ b/server/mpm/worker/worker.c @@ -1494,7 +1494,8 @@ static void perform_idle_server_maintenance(void) ++idle_thread_count; } } - if (any_dead_threads && totally_free_length < idle_spawn_rate + if (any_dead_threads && totally_free_length < idle_spawn_rate + && free_length < MAX_SPAWN_RATE && (!ps->pid /* no process in the slot */ || ps->quiescing)) { /* or at least one is going away */ if (all_dead_threads) { -- 2.47.2