r2017 - trunk/varnish-cache/bin/varnishd

phk at projects.linpro.no phk at projects.linpro.no
Tue Sep 25 08:56:23 CEST 2007


Author: phk
Date: 2007-09-25 08:56:23 +0200 (Tue, 25 Sep 2007)
New Revision: 2017

Modified:
   trunk/varnish-cache/bin/varnishd/cache.h
   trunk/varnish-cache/bin/varnishd/shmlog.c
Log:
Polish shmlog:

The id argument is a file descriptor, so it should be typed "int".
We must have a fmt argument.
Use pdiff.


Modified: trunk/varnish-cache/bin/varnishd/cache.h
===================================================================
--- trunk/varnish-cache/bin/varnishd/cache.h	2007-09-25 06:51:04 UTC (rev 2016)
+++ trunk/varnish-cache/bin/varnishd/cache.h	2007-09-25 06:56:23 UTC (rev 2017)
@@ -508,10 +508,10 @@
 
 void VSL_Init(void);
 #ifdef SHMLOGHEAD_MAGIC
-void VSLR(enum shmlogtag tag, unsigned id, const char *b, const char *e);
-void VSL(enum shmlogtag tag, unsigned id, const char *fmt, ...);
-void WSLR(struct worker *w, enum shmlogtag tag, unsigned id, const char *b, const char *e);
-void WSL(struct worker *w, enum shmlogtag tag, unsigned id, const char *fmt, ...);
+void VSLR(enum shmlogtag tag, int id, const char *b, const char *e);
+void VSL(enum shmlogtag tag, int id, const char *fmt, ...);
+void WSLR(struct worker *w, enum shmlogtag tag, int id, const char *b, const char *e);
+void WSL(struct worker *w, enum shmlogtag tag, int id, const char *fmt, ...);
 void WSL_Flush(struct worker *w);
 #define INCOMPL() do {							\
 	VSL(SLT_Debug, 0, "INCOMPLETE AT: %s(%d)", __func__, __LINE__); \

Modified: trunk/varnish-cache/bin/varnishd/shmlog.c
===================================================================
--- trunk/varnish-cache/bin/varnishd/shmlog.c	2007-09-25 06:51:04 UTC (rev 2016)
+++ trunk/varnish-cache/bin/varnishd/shmlog.c	2007-09-25 06:56:23 UTC (rev 2017)
@@ -83,7 +83,7 @@
 /*--------------------------------------------------------------------*/
 
 void
-VSLR(enum shmlogtag tag, unsigned id, const char *b, const char *e)
+VSLR(enum shmlogtag tag, int id, const char *b, const char *e)
 {
 	unsigned char *p;
 	unsigned l;
@@ -93,7 +93,7 @@
 		e = strchr(b, '\0');
 
 	/* Truncate */
-	l = e - b;
+	l = pdiff(b, e);
 	if (l > 255) {
 		l = 255;
 		e = b + l;
@@ -126,12 +126,13 @@
 /*--------------------------------------------------------------------*/
 
 void
-VSL(enum shmlogtag tag, unsigned id, const char *fmt, ...)
+VSL(enum shmlogtag tag, int id, const char *fmt, ...)
 {
 	va_list ap;
 	unsigned char *p;
 	unsigned n;
 
+	AN(fmt);
 	va_start(ap, fmt);
 
 	if (strchr(fmt, '%') == NULL) {
@@ -150,11 +151,9 @@
 
 	p = logstart + loghead->ptr;
 	n = 0;
-	if (fmt != NULL) {
-		n = vsnprintf((char *)(p + 4), 256, fmt, ap);
-		if (n > 255)
-			n = 255; 	/* we truncate long fields */
-	}
+	n = vsnprintf((char *)(p + 4), 256, fmt, ap);
+	if (n > 255)
+		n = 255; 	/* we truncate long fields */
 	p[1] = n & 0xff;
 	p[2] = (id >> 8) & 0xff;
 	p[3] = id & 0xff;
@@ -181,7 +180,7 @@
 
 	if (w->wlp == w->wlog)
 		return;
-	l = w->wlp - w->wlog;
+	l = pdiff(w->wlog, w->wlp);
 	LOCKSHM(&vsl_mtx);
 	VSL_stats->shm_writes++;
 	VSL_stats->shm_records += w->wlr;
@@ -201,7 +200,7 @@
 /*--------------------------------------------------------------------*/
 
 void
-WSLR(struct worker *w, enum shmlogtag tag, unsigned id, const char *b, const char *e)
+WSLR(struct worker *w, enum shmlogtag tag, int id, const char *b, const char *e)
 {
 	unsigned char *p;
 	unsigned l;
@@ -211,7 +210,7 @@
 		e = strchr(b, '\0');
 
 	/* Truncate */
-	l = e - b;
+	l = pdiff(b, e);
 	if (l > 255) {
 		l = 255;
 		e = b + l;
@@ -239,12 +238,13 @@
 /*--------------------------------------------------------------------*/
 
 void
-WSL(struct worker *w, enum shmlogtag tag, unsigned id, const char *fmt, ...)
+WSL(struct worker *w, enum shmlogtag tag, int id, const char *fmt, ...)
 {
 	va_list ap;
 	unsigned char *p;
 	unsigned n;
 
+	AN(fmt);
 	va_start(ap, fmt);
 
 	if (strchr(fmt, '%') == NULL) {
@@ -260,11 +260,9 @@
 
 	p = w->wlp;
 	n = 0;
-	if (fmt != NULL) {
-		n = vsnprintf((char *)(p + 4), 256, fmt, ap);
-		if (n > 255)
-			n = 255; 	/* we truncate long fields */
-	}
+	n = vsnprintf((char *)(p + 4), 256, fmt, ap);
+	if (n > 255)
+		n = 255; 	/* we truncate long fields */
 	p[1] = n & 0xff;
 	p[2] = (id >> 8) & 0xff;
 	p[3] = id & 0xff;




More information about the varnish-commit mailing list