]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
master: Make sure a listener isn't added to a throttled service
authorTimo Sirainen <timo.sirainen@open-xchange.com>
Mon, 4 May 2020 14:21:23 +0000 (17:21 +0300)
committertimo.sirainen <timo.sirainen@open-xchange.com>
Mon, 24 Aug 2020 07:13:51 +0000 (07:13 +0000)
This fixes master process using 100% CPU in some situations when a service
is being throttled.

src/master/service-monitor.c

index b2408b56479c62e68ec6f36cb955b0bc143bd268..8e1b78fa058d14e4436a999cd78a5a157213bafa 100644 (file)
@@ -389,7 +389,7 @@ static void service_monitor_listen_start_force(struct service *service)
 
 void service_monitor_listen_start(struct service *service)
 {
-       if (service->process_avail > 0 ||
+       if (service->process_avail > 0 || service->to_throttle != NULL ||
            (service->process_count == service->process_limit &&
             service->listen_pending))
                return;