[master] 9c330b6 remove the thread workspace check at the fsm level

Nils Goroll nils.goroll at uplex.de
Mon Nov 13 11:32:05 UTC 2017


commit 9c330b6dd76f11ddbdab30a2c0b62c45176c47c9
Author: Nils Goroll <nils.goroll at uplex.de>
Date:   Fri Nov 10 23:42:15 2017 +0100

    remove the thread workspace check at the fsm level
    
    We still check that nothing is left on the thread workspace after
    vcl methods in vcl_call_method(), but we do not require the thread
    workspace to be totally empty any more.

diff --git a/bin/varnishd/cache/cache_req.c b/bin/varnishd/cache/cache_req.c
index 6ee3050..0688adf 100644
--- a/bin/varnishd/cache/cache_req.c
+++ b/bin/varnishd/cache/cache_req.c
@@ -226,7 +226,6 @@ Req_Cleanup(struct sess *sp, struct worker *wrk, struct req *req)
 	req->is_hit = 0;
 
 	WS_Reset(req->ws, 0);
-	WS_Reset(wrk->aws, 0);
 }
 
 /*----------------------------------------------------------------------
diff --git a/bin/varnishd/cache/cache_req_fsm.c b/bin/varnishd/cache/cache_req_fsm.c
index c593e93..95dafbd 100644
--- a/bin/varnishd/cache/cache_req_fsm.c
+++ b/bin/varnishd/cache/cache_req_fsm.c
@@ -1001,14 +1001,6 @@ CNT_Request(struct worker *wrk, struct req *req)
 		CHECK_OBJ_ORNULL(wrk->nobjhead, OBJHEAD_MAGIC);
 		CHECK_OBJ_NOTNULL(req, REQ_MAGIC);
 
-		/*
-		 * We don't want the thread workspace to be used for
-		 * anything of long duration, so mandate that it be
-		 * empty on state-transitions.
-		 */
-		WS_Assert(wrk->aws);
-		AZ(WS_Snapshot(wrk->aws));
-
 		switch (req->req_step) {
 #define REQ_STEP(l,u,arg) \
 		    case R_STP_##u: \
@@ -1020,7 +1012,6 @@ CNT_Request(struct worker *wrk, struct req *req)
 		default:
 			WRONG("State engine misfire");
 		}
-		WS_Assert(wrk->aws);
 		CHECK_OBJ_ORNULL(wrk->nobjhead, OBJHEAD_MAGIC);
 	}
 	wrk->vsl = NULL;


More information about the varnish-commit mailing list