[4.1] 7f9dfc0 Don't use WS_Overflowed() from panic dumps, it has asserts which can recurse.

Lasse Karstensen lkarsten at varnish-software.com
Thu Feb 11 17:14:32 CET 2016


commit 7f9dfc027382bd28b55e85e59c1c46d92666f3ec
Author: Poul-Henning Kamp <phk at FreeBSD.org>
Date:   Tue Feb 2 08:17:06 2016 +0000

    Don't use WS_Overflowed() from panic dumps, it has asserts which
    can recurse.

diff --git a/bin/varnishd/cache/cache_panic.c b/bin/varnishd/cache/cache_panic.c
index 0613604..8e7fd1e 100644
--- a/bin/varnishd/cache/cache_panic.c
+++ b/bin/varnishd/cache/cache_panic.c
@@ -115,7 +115,7 @@ pan_ws(struct vsb *vsb, const struct ws *ws)
 
 	VSB_printf(vsb, "ws = %p {\n", ws);
 	VSB_indent(vsb, 2);
-	if (WS_Overflowed(ws))
+	if (ws->id[0] & 0x20)
 		VSB_printf(vsb, "OVERFLOW ");
 	VSB_printf(vsb, "id = \"%s\",\n",  ws->id);
 	VSB_printf(vsb, "{s,f,r,e} = {%p",  ws->s);
diff --git a/bin/varnishd/cache/cache_ws.c b/bin/varnishd/cache/cache_ws.c
index 7070f1a..615c9bb 100644
--- a/bin/varnishd/cache/cache_ws.c
+++ b/bin/varnishd/cache/cache_ws.c
@@ -251,6 +251,7 @@ WS_ReleaseP(struct ws *ws, char *ptr)
 	ws->r = NULL;
 	WS_Assert(ws);
 }
+
 int
 WS_Overflowed(const struct ws *ws)
 {



More information about the varnish-commit mailing list