[master] fc40ec3 Add a flag to brand req's on waiting list.

Poul-Henning Kamp phk at FreeBSD.org
Mon May 9 18:20:06 CEST 2016


commit fc40ec31e8fcab4f4bca632294ee056764202552
Author: Poul-Henning Kamp <phk at FreeBSD.org>
Date:   Mon May 9 15:48:59 2016 +0000

    Add a flag to brand req's on waiting list.

diff --git a/bin/varnishd/cache/cache_hash.c b/bin/varnishd/cache/cache_hash.c
index 7e4acc3..3c2cdcb 100644
--- a/bin/varnishd/cache/cache_hash.c
+++ b/bin/varnishd/cache/cache_hash.c
@@ -500,6 +500,7 @@ HSH_Lookup(struct req *req, struct objcore **ocp, struct objcore **bocp,
 	 */
 	req->hash_objhead = oh;
 	req->wrk = NULL;
+	req->waitinglist = 1;
 	Lck_Unlock(&oh->mtx);
 	return (HSH_BUSY);
 }
@@ -528,6 +529,7 @@ hsh_rush1(struct worker *wrk, struct objhead *oh, struct rush *r, int all)
 		AZ(req->wrk);
 		VTAILQ_REMOVE(&oh->waitinglist, req, w_list);
 		VTAILQ_INSERT_TAIL(&r->reqs, req, w_list);
+		req->waitinglist = 0;
 	}
 }
 
diff --git a/include/tbl/req_flags.h b/include/tbl/req_flags.h
index 55bdc74..4b8ec5b 100644
--- a/include/tbl/req_flags.h
+++ b/include/tbl/req_flags.h
@@ -34,4 +34,5 @@ REQ_FLAG(disable_esi,		0, 0, "")
 REQ_FLAG(hash_ignore_busy,	1, 1, "")
 REQ_FLAG(hash_always_miss,	1, 1, "")
 REQ_FLAG(is_hit,		0, 0, "")
+REQ_FLAG(waitinglist,		0, 0, "")
 /*lint -restore */



More information about the varnish-commit mailing list