[6.0] f465e905e Don't poll VSM_Status() while there is work to do and no interruptions.
Dridi Boukelmoune
dridi.boukelmoune at gmail.com
Wed Oct 31 13:08:26 UTC 2018
commit f465e905e97e858034171ddfbd5ad4ab3bed4015
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