[master] 65c6d4294 Fix a race exposed on fast 32 bit FreeBSD

Poul-Henning Kamp phk at FreeBSD.org
Thu Sep 6 08:59:13 UTC 2018


commit 65c6d429449f9ebc711f724802e5a8192de1d484
Author: Poul-Henning Kamp <phk at FreeBSD.org>
Date:   Thu Sep 6 08:58:25 2018 +0000

    Fix a race exposed on fast 32 bit FreeBSD

diff --git a/bin/varnishtest/vtc_process.c b/bin/varnishtest/vtc_process.c
index 5f5cd2a86..be943cfaf 100644
--- a/bin/varnishtest/vtc_process.c
+++ b/bin/varnishtest/vtc_process.c
@@ -916,7 +916,7 @@ void
 cmd_process(CMD_ARGS)
 {
 	struct process *p, *p2;
-	uintmax_t u, v;
+	uintmax_t u, v, bsnap;
 	unsigned lin,col;
 	int spec_set = 0;
 
@@ -952,6 +952,8 @@ cmd_process(CMD_ARGS)
 		p = process_new(av[0]);
 	av++;
 
+	bsnap = p->stdout_bytes;
+
 	for (; *av != NULL; av++) {
 		if (vtc_error)
 			break;
@@ -1003,7 +1005,7 @@ cmd_process(CMD_ARGS)
 		if (!strcmp(*av, "-need-bytes")) {
 			u = strtoumax(av[1], NULL, 0);
 			if (av[1][0] == '+')
-				u += p->stdout_bytes;
+				u += bsnap;
 			av++;
 			do {
 				AZ(pthread_mutex_lock(&p->mtx));


More information about the varnish-commit mailing list