From b376934b6799fe8cee809f70292c9ee832c31ccf Mon Sep 17 00:00:00 2001 From: Glenn Strauss Date: Wed, 3 Nov 2021 11:45:54 -0400 Subject: [PATCH] [core] close backend socket fds more quickly (thx ThomasDevoogdt) close backend socket fds more quickly by polling with zero timeout when there are pending fds scheduled to be closed after the next poll. x-ref: "Slow request handling in Lighttpd 1.4.60" https://redmine.lighttpd.net/boards/2/topics/10063 --- src/fdevent_impl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/fdevent_impl.c b/src/fdevent_impl.c index 09e49e3c..90725be0 100644 --- a/src/fdevent_impl.c +++ b/src/fdevent_impl.c @@ -339,7 +339,7 @@ fdevent_sched_run (fdevents * const ev) int fdevent_poll (fdevents * const ev, const int timeout_ms) { - const int n = ev->poll(ev, timeout_ms); + const int n = ev->poll(ev, ev->pendclose ? 0 : timeout_ms); if (n >= 0) fdevent_sched_run(ev); else if (errno != EINTR)