r2726 - trunk/varnish-cache/bin/varnishtest

phk at projects.linpro.no phk at projects.linpro.no
Tue Jun 17 12:15:21 CEST 2008


Author: phk
Date: 2008-06-17 12:15:20 +0200 (Tue, 17 Jun 2008)
New Revision: 2726

Modified:
   trunk/varnish-cache/bin/varnishtest/vtc_varnish.c
Log:
Now that varnishd's -d -d mode behaves correctly, use a more
civilized shutdown sequence.



Modified: trunk/varnish-cache/bin/varnishtest/vtc_varnish.c
===================================================================
--- trunk/varnish-cache/bin/varnishtest/vtc_varnish.c	2008-06-17 10:14:23 UTC (rev 2725)
+++ trunk/varnish-cache/bin/varnishtest/vtc_varnish.c	2008-06-17 10:15:20 UTC (rev 2726)
@@ -38,6 +38,7 @@
 #include <signal.h>
 
 #include <sys/types.h>
+#include <sys/wait.h>
 #include <sys/socket.h>
 
 
@@ -267,18 +268,21 @@
 varnish_wait(struct varnish *v)
 {
 	void *p;
+	int status, r;
 
 	if (v->cli_fd < 0)
 		return;
 	varnish_stop(v);
 	printf("##   %-4s Wait\n", v->name);
-	AZ(kill(v->pid, SIGKILL));
-	AZ(pthread_cancel(v->tp));
+	AZ(close(v->cli_fd));
+	v->cli_fd = -1;
+
+	AZ(close(v->fds[1]));
+
 	AZ(pthread_join(v->tp, &p));
-	close(v->fds[0]);
-	close(v->fds[1]);
-	close(v->cli_fd);
-	v->cli_fd = -1;
+	AZ(close(v->fds[0]));
+	r = wait4(v->pid, &status, 0, NULL);
+	printf("##   %-4s R %d Status: %04x\n", v->name, r, status);
 }
 
 /**********************************************************************




More information about the varnish-commit mailing list