[master] 9173a98 Move xid from sess to req
Poul-Henning Kamp
phk at varnish-cache.org
Fri Dec 23 12:48:48 CET 2011
commit 9173a98a9f63de2fa47b04e8eb0094f4e5029ee6
Author: Poul-Henning Kamp <phk at FreeBSD.org>
Date: Fri Dec 23 11:48:11 2011 +0000
Move xid from sess to req
diff --git a/bin/varnishd/cache/cache.h b/bin/varnishd/cache/cache.h
index 3c37176..f45235b 100644
--- a/bin/varnishd/cache/cache.h
+++ b/bin/varnishd/cache/cache.h
@@ -580,6 +580,8 @@ struct object {
struct req {
unsigned magic;
#define REQ_MAGIC 0x2751aaa1
+
+ unsigned xid;
};
/*--------------------------------------------------------------------*/
@@ -625,7 +627,6 @@ struct sess {
/* Request related fields ------------------------------------*/
- unsigned xid;
int restarts;
int esi_level;
diff --git a/bin/varnishd/cache/cache_center.c b/bin/varnishd/cache/cache_center.c
index a119360..1de6ed7 100644
--- a/bin/varnishd/cache/cache_center.c
+++ b/bin/varnishd/cache/cache_center.c
@@ -113,7 +113,7 @@ cnt_wait(struct sess *sp)
AZ(sp->vcl);
AZ(wrk->obj);
AZ(sp->esi_level);
- assert(sp->xid == 0);
+ assert(sp->req->xid == 0);
assert(!isnan(sp->t_req));
tmo = (int)(1e3 * cache_param->timeout_linger);
@@ -397,7 +397,7 @@ cnt_done(struct sess *sp)
sp->t_idle = W_TIM_real(wrk);
- if (sp->xid == 0) {
+ if (sp->req->xid == 0) {
sp->t_resp = sp->t_idle;
} else {
dp = sp->t_resp - sp->t_req;
@@ -410,9 +410,9 @@ cnt_done(struct sess *sp)
(uintmax_t)sp->req_bodybytes);
}
WSP(sp, SLT_ReqEnd, "%u %.9f %.9f %.9f %.9f %.9f",
- sp->xid, sp->t_req, sp->t_idle, dh, dp, da);
+ sp->req->xid, sp->t_req, sp->t_idle, dh, dp, da);
}
- sp->xid = 0;
+ sp->req->xid = 0;
WSL_Flush(wrk, 0);
sp->t_req = NAN;
@@ -503,7 +503,7 @@ cnt_error(struct sess *sp)
return(0);
}
AN(wrk->obj);
- wrk->obj->xid = sp->xid;
+ wrk->obj->xid = sp->req->xid;
wrk->obj->exp.entered = sp->t_req;
} else {
CHECK_OBJ_NOTNULL(wrk->busyobj, BUSYOBJ_MAGIC);
@@ -869,7 +869,7 @@ cnt_fetchbody(struct sess *sp)
VSB_delete(vary);
}
- wrk->obj->xid = sp->xid;
+ wrk->obj->xid = sp->req->xid;
wrk->obj->response = sp->err_code;
WS_Assert(wrk->obj->ws_o);
@@ -1035,7 +1035,7 @@ cnt_first(struct sess *sp)
wrk = sp->wrk;
CHECK_OBJ_NOTNULL(wrk, WORKER_MAGIC);
- assert(sp->xid == 0);
+ AZ(sp->req);
assert(sp->restarts == 0);
AZ(sp->esi_level);
@@ -1595,8 +1595,8 @@ cnt_start(struct sess *sp)
wrk->acct_tmp.req++;
/* Assign XID and log */
- sp->xid = ++xids; /* XXX not locked */
- WSP(sp, SLT_ReqStart, "%s %s %u", sp->addr, sp->port, sp->xid);
+ sp->req->xid = ++xids; /* XXX not locked */
+ WSP(sp, SLT_ReqStart, "%s %s %u", sp->addr, sp->port, sp->req->xid);
/* Borrow VCL reference from worker thread */
VCL_Refresh(&wrk->vcl);
diff --git a/bin/varnishd/cache/cache_cli.c b/bin/varnishd/cache/cache_cli.c
index 98d89c3..abb9e43 100644
--- a/bin/varnishd/cache/cache_cli.c
+++ b/bin/varnishd/cache/cache_cli.c
@@ -132,6 +132,7 @@ cli_debug_sizeof(struct cli *cli, const char * const *av, void *priv)
SZOF(struct objcore);
SZOF(struct objhead);
SZOF(struct sess);
+ SZOF(struct req);
SZOF(struct vbc);
SZOF(struct VSC_C_main);
SZOF(struct lock);
diff --git a/bin/varnishd/cache/cache_esi_deliver.c b/bin/varnishd/cache/cache_esi_deliver.c
index e961819..fb0771d 100644
--- a/bin/varnishd/cache/cache_esi_deliver.c
+++ b/bin/varnishd/cache/cache_esi_deliver.c
@@ -91,7 +91,7 @@ ved_include(struct sess *sp, const char *src, const char *host)
/* Client content already taken care of */
http_Unset(sp->http, H_Content_Length);
- sxid = sp->xid;
+ sxid = sp->req->xid;
while (1) {
sp->wrk = w;
CNT_Session(sp);
@@ -102,7 +102,7 @@ ved_include(struct sess *sp, const char *src, const char *host)
DSL(0x20, SLT_Debug, sp->vsl_id, "loop waiting for ESI");
(void)usleep(10000);
}
- sp->xid = sxid;
+ sp->req->xid = sxid;
AN(sp->wrk);
assert(sp->step == STP_DONE);
sp->esi_level--;
diff --git a/bin/varnishd/cache/cache_http.c b/bin/varnishd/cache/cache_http.c
index 4a6ba82..803fed2 100644
--- a/bin/varnishd/cache/cache_http.c
+++ b/bin/varnishd/cache/cache_http.c
@@ -880,7 +880,7 @@ http_FilterHeader(const struct sess *sp, unsigned how)
else
http_copyh(hp, sp->http, HTTP_HDR_PROTO);
http_FilterFields(sp->wrk, sp->vsl_id, hp, sp->http, how);
- http_PrintfHeader(sp->wrk, sp->vsl_id, hp, "X-Varnish: %u", sp->xid);
+ http_PrintfHeader(sp->wrk, sp->vsl_id, hp, "X-Varnish: %u", sp->req->xid);
}
/*--------------------------------------------------------------------
diff --git a/bin/varnishd/cache/cache_panic.c b/bin/varnishd/cache/cache_panic.c
index 6daf807..238c597 100644
--- a/bin/varnishd/cache/cache_panic.c
+++ b/bin/varnishd/cache/cache_panic.c
@@ -235,7 +235,7 @@ pan_sess(const struct sess *sp)
VSB_printf(pan_vsp, "sp = %p {\n", sp);
VSB_printf(pan_vsp,
" fd = %d, id = %u, xid = %u,\n",
- sp->fd, sp->vsl_id & VSL_IDENTMASK, sp->xid);
+ sp->fd, sp->vsl_id & VSL_IDENTMASK, sp->req->xid);
VSB_printf(pan_vsp, " client = %s %s,\n",
sp->addr ? sp->addr : "?.?.?.?",
sp->port ? sp->port : "?");
diff --git a/bin/varnishd/cache/cache_response.c b/bin/varnishd/cache/cache_response.c
index 43feae9..cbddb7d 100644
--- a/bin/varnishd/cache/cache_response.c
+++ b/bin/varnishd/cache/cache_response.c
@@ -132,12 +132,12 @@ RES_BuildHttp(const struct sess *sp)
http_PrintfHeader(sp->wrk, sp->vsl_id, sp->wrk->resp,
"Date: %s", time_str);
- if (sp->xid != sp->wrk->obj->xid)
+ if (sp->req->xid != sp->wrk->obj->xid)
http_PrintfHeader(sp->wrk, sp->vsl_id, sp->wrk->resp,
- "X-Varnish: %u %u", sp->xid, sp->wrk->obj->xid);
+ "X-Varnish: %u %u", sp->req->xid, sp->wrk->obj->xid);
else
http_PrintfHeader(sp->wrk, sp->vsl_id, sp->wrk->resp,
- "X-Varnish: %u", sp->xid);
+ "X-Varnish: %u", sp->req->xid);
http_PrintfHeader(sp->wrk, sp->vsl_id, sp->wrk->resp, "Age: %.0f",
sp->wrk->obj->exp.age + sp->t_resp - sp->wrk->obj->exp.entered);
http_SetHeader(sp->wrk, sp->vsl_id, sp->wrk->resp, "Via: 1.1 varnish");
diff --git a/bin/varnishd/cache/cache_rfc2616.c b/bin/varnishd/cache/cache_rfc2616.c
index 6e7efea..2878d9a 100644
--- a/bin/varnishd/cache/cache_rfc2616.c
+++ b/bin/varnishd/cache/cache_rfc2616.c
@@ -169,7 +169,7 @@ RFC2616_Ttl(const struct sess *sp)
/* calculated TTL, Our time, Date, Expires, max-age, age */
WSP(sp, SLT_TTL,
"%u RFC %.0f %.0f %.0f %.0f %.0f %.0f %.0f %u",
- sp->xid, expp->ttl, -1., -1., expp->entered,
+ sp->req->xid, expp->ttl, -1., -1., expp->entered,
expp->age, h_date, h_expires, max_age);
}
diff --git a/bin/varnishd/cache/cache_vrt_var.c b/bin/varnishd/cache/cache_vrt_var.c
index 7431c1b..6f5544b 100644
--- a/bin/varnishd/cache/cache_vrt_var.c
+++ b/bin/varnishd/cache/cache_vrt_var.c
@@ -416,11 +416,11 @@ VRT_DO_EXP(obj, sp->wrk->obj->exp, keep, 0,
vrt_wsp_exp(sp, sp->wrk->obj->xid, &sp->wrk->obj->exp);)
VRT_DO_EXP(beresp, sp->wrk->busyobj->exp, grace, 0,
- vrt_wsp_exp(sp, sp->xid, &sp->wrk->busyobj->exp);)
+ vrt_wsp_exp(sp, sp->req->xid, &sp->wrk->busyobj->exp);)
VRT_DO_EXP(beresp, sp->wrk->busyobj->exp, ttl, 0,
- vrt_wsp_exp(sp, sp->xid, &sp->wrk->busyobj->exp);)
+ vrt_wsp_exp(sp, sp->req->xid, &sp->wrk->busyobj->exp);)
VRT_DO_EXP(beresp, sp->wrk->busyobj->exp, keep, 0,
- vrt_wsp_exp(sp, sp->xid, &sp->wrk->busyobj->exp);)
+ vrt_wsp_exp(sp, sp->req->xid, &sp->wrk->busyobj->exp);)
/*--------------------------------------------------------------------
* req.xid
@@ -433,9 +433,9 @@ VRT_r_req_xid(struct sess *sp)
int size;
CHECK_OBJ_NOTNULL(sp, SESS_MAGIC);
- size = snprintf(NULL, 0, "%u", sp->xid) + 1;
+ size = snprintf(NULL, 0, "%u", sp->req->xid) + 1;
AN(p = WS_Alloc(sp->http->ws, size));
- assert(snprintf(p, size, "%u", sp->xid) < size);
+ assert(snprintf(p, size, "%u", sp->req->xid) < size);
return (p);
}
More information about the varnish-commit
mailing list