[3.0] bc6aded Don't look at a static version of the VSM during startup.
Tollef Fog Heen
tfheen at varnish-cache.org
Tue Aug 30 10:31:38 CEST 2011
commit bc6aded46ffba78415405c5fddb23bdf56f23ddb
Author: Poul-Henning Kamp <phk at FreeBSD.org>
Date: Tue Aug 30 07:21:35 2011 +0000
Don't look at a static version of the VSM during startup.
Fixes #995
Patch by DocWilco
diff --git a/lib/libvarnishapi/vsm.c b/lib/libvarnishapi/vsm.c
index 8e02400..79cf5e5 100644
--- a/lib/libvarnishapi/vsm.c
+++ b/lib/libvarnishapi/vsm.c
@@ -192,18 +192,19 @@ vsm_open(struct VSM_data *vd, int diag)
}
vd->vsm_end = (uint8_t *)vd->VSM_head + slh.shm_size;
- for (j = 0; j < 20 && slh.alloc_seq == 0; j++)
+ for (j = 0; j < 20 && vd->VSM_head->alloc_seq == 0; j++)
(void)usleep(50000);
- if (slh.alloc_seq == 0) {
+ if (vd->VSM_head->alloc_seq == 0) {
if (diag)
vd->diag(vd->priv, "File not initialized %s\n",
vd->fname);
assert(0 == munmap((void*)vd->VSM_head, slh.shm_size));
AZ(close(vd->vsm_fd));
vd->vsm_fd = -1;
+ vd->VSM_head = NULL;
return (1);
}
- vd->alloc_seq = slh.alloc_seq;
+ vd->alloc_seq = vd->VSM_head->alloc_seq;
if (vd->vsl != NULL)
VSL_Open_CallBack(vd);
More information about the varnish-commit
mailing list