[6.1] ed1696efc Don't poll VSM_Status() while there is work to do and no interruptions.
hermunn
hermunn at varnish-software.com
Wed Oct 24 09:29:19 UTC 2018
commit ed1696efc92cb6a9aa96d2b8e586be8dbbb1736b
Author: Poul-Henning Kamp <phk at FreeBSD.org>
Date: Thu Oct 4 07:17:58 2018 +0000
Don't poll VSM_Status() while there is work to do and no interruptions.
Fixes #2788
diff --git a/lib/libvarnishapi/vut.c b/lib/libvarnishapi/vut.c
index 03cd9f07a..b02644a81 100644
--- a/lib/libvarnishapi/vut.c
+++ b/lib/libvarnishapi/vut.c
@@ -420,7 +420,10 @@ VUT_Main(struct VUT *vut)
AZ(c);
}
- i = VSLQ_Dispatch(vut->vslq, vut_dispatch, vut);
+ do
+ i = VSLQ_Dispatch(vut->vslq, vut_dispatch, vut);
+ while (i == vsl_more && !vut->sighup && !vut->sigusr1);
+
if (i == vsl_more)
continue;
else if (i == vsl_end) {
More information about the varnish-commit
mailing list