]> err.no Git - varnish/commitdiff
Give workspaces an identifying string to aid debugging.
authorphk <phk@d4fa192b-c00b-0410-8231-f00ffab90ce4>
Mon, 29 Oct 2007 09:28:21 +0000 (09:28 +0000)
committerphk <phk@d4fa192b-c00b-0410-8231-f00ffab90ce4>
Mon, 29 Oct 2007 09:28:21 +0000 (09:28 +0000)
git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2183 d4fa192b-c00b-0410-8231-f00ffab90ce4

varnish-cache/bin/varnishd/cache.h
varnish-cache/bin/varnishd/cache_backend.c
varnish-cache/bin/varnishd/cache_fetch.c
varnish-cache/bin/varnishd/cache_session.c
varnish-cache/bin/varnishd/cache_synthetic.c
varnish-cache/bin/varnishd/cache_ws.c

index 6d5848b95229fe5f043f63607bf5b1d91d7ee756..e2336942e2e74e59bbbdb518452b442b3bb16ac3 100644 (file)
@@ -90,6 +90,7 @@ enum step {
  */
 
 struct ws {
+       const char              *id;            /* identity */
        char                    *s;             /* (S)tart of buffer */
        char                    *f;             /* (F)ree pointer */
        char                    *r;             /* (R)eserved length */
@@ -584,7 +585,7 @@ void ESI_Destroy(struct object *);
 
 /* cache_ws.c */
 
-void WS_Init(struct ws *ws, void *space, unsigned len);
+void WS_Init(struct ws *ws, const char *id, void *space, unsigned len);
 unsigned WS_Reserve(struct ws *ws, unsigned bytes);
 void WS_Release(struct ws *ws, unsigned bytes);
 void WS_ReleaseP(struct ws *ws, char *ptr);
index 1b2b9ca421d34872cc53eaf1c7410052c93942e5..83da55c1932e53445a1192be4bbc3507501e2e4c 100644 (file)
@@ -147,7 +147,7 @@ VBE_new_bereq(void)
                if (bereq == NULL)
                        return (NULL);
                bereq->magic = BEREQ_MAGIC;
-               WS_Init(bereq->ws, bereq + 1, len);
+               WS_Init(bereq->ws, "bereq", bereq + 1, len);
        }
        http_Setup(bereq->http, bereq->ws);
        return (bereq);
index a3f1ea93cd95eb386e1becf7b654851bdae84c96..0f0b6f0abc5f252228d738c7bd29dabd083b6734 100644 (file)
@@ -278,7 +278,7 @@ Fetch(struct sess *sp)
 
        /* Set up obj's workspace */
        st = sp->obj->objstore;
-       WS_Init(sp->obj->ws_o, st->ptr + st->len, st->space - st->len);
+       WS_Init(sp->obj->ws_o, "obj", st->ptr + st->len, st->space - st->len);
        st->len = st->space;
        WS_Assert(sp->obj->ws_o);
        http_Setup(sp->obj->http, sp->obj->ws_o);
index ca824017015aa55d0d2f42b3843f00300f1959b5..463d3a03ebed1515ea27734e76790df10ab6bfab 100644 (file)
@@ -318,7 +318,7 @@ SES_New(const struct sockaddr *addr, unsigned len)
                sp->sockaddrlen = len;
        }
 
-       WS_Init(sp->ws, (void *)(sm + 1), sm->workspace);
+       WS_Init(sp->ws, "sess", (void *)(sm + 1), sm->workspace);
        sp->http = &sm->http[0];
        sp->http0 = &sm->http[1];
 
index ce6f8c19a9dd29ae422eaabe1e93b601e9fdcdf1..b8c4c39cc58abf1e5bcaa54e01fbddf478a6a551 100644 (file)
@@ -73,7 +73,7 @@ SYN_ErrorPage(struct sess *sp, int status, const char *reason, int ttl)
 
        /* Set up obj's workspace */
        st = o->objstore;
-       WS_Init(o->ws_o, st->ptr + st->len, st->space - st->len);
+       WS_Init(o->ws_o, "obj", st->ptr + st->len, st->space - st->len);
        st->len = st->space;
        WS_Assert(o->ws_o);
        http_Setup(o->http, o->ws_o);
@@ -126,7 +126,7 @@ SYN_ErrorPage(struct sess *sp, int status, const char *reason, int ttl)
 
        /* allocate space for header */
 
-       WS_Init(h->ws, malloc(1024), 1024);
+       WS_Init(h->ws, "error", malloc(1024), 1024);
 
        /* generate header */
        http_ClrHeader(h);
index f3a22c9eb55db711148fd955ace48b281b6d8330..2ef8bcee2913fe5e1f371a286f052c3e6002cd71 100644 (file)
@@ -57,8 +57,8 @@ WS_Assert(const struct ws *ws)
 {
 
        assert(ws != NULL);
-       WS_DEBUG((SLT_Debug, 0, "WS(%p = (%p %u %u %u)",
-           ws, ws->s, pdiff(ws->s, ws->f),
+       WS_DEBUG((SLT_Debug, 0, "WS(%p = (%s, %p %u %u %u)",
+           ws, ws->id, ws->s, pdiff(ws->s, ws->f),
            ws->r == NULL ? 0 : pdiff(ws->f, ws->r),
            pdiff(ws->s, ws->e)));
        assert(ws->s != NULL);
@@ -73,15 +73,16 @@ WS_Assert(const struct ws *ws)
 }
 
 void
-WS_Init(struct ws *ws, void *space, unsigned len)
+WS_Init(struct ws *ws, const char *id, void *space, unsigned len)
 {
 
-       WS_DEBUG((SLT_Debug, 0, "WS_Init(%p, %p, %u)", ws, space, len));
+       WS_DEBUG((SLT_Debug, 0, "WS_Init(%p, \"%s\", %p, %u)", ws, id, space, len));
        assert(space != NULL);
        memset(ws, 0, sizeof *ws);
        ws->s = space;
        ws->e = ws->s + len;
        ws->f = ws->s;
+       ws->id = id;
        WS_Assert(ws);
 }