<div dir="ltr">I've pushed changes to fix these issues.<div><br></div><div>Martin</div></div><br><div class="gmail_quote"><div dir="ltr">On Mon, 8 Aug 2016 at 10:24 Poul-Henning Kamp <<a href="mailto:phk@phk.freebsd.dk">phk@phk.freebsd.dk</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">They both look serious-ish...<br>
<br>
2 new defect(s) introduced to varnish found with Coverity Scan.<br>
<br>
New defect(s) Reported-by: Coverity Scan Showing 2 of 2 defect(s)<br>
<br>
** CID 1364600: Concurrent data access violations (MISSING_LOCK) /bin/<br>
varnishhist/varnishhist.c: 216 in upd_vsl_ts()<br>
<br>
_____________________________________________________________________________________________________<br>
_ * CID 1364600: Concurrent data access violations (MISSING_LOCK) /bin/<br>
varnishhist/varnishhist.c: 216 in upd_vsl_ts() 210 if (p == NULL) 211 return;<br>
212 213 t = strtod(p + 1, NULL); 214 215 if (t > vsl_ts)<br>
<br>
            CID 1364600: Concurrent data access violations (MISSING_LOCK)<br>
            Accessing “vsl_ts” without holding lock “mtx”. Elsewhere, “vsl_ts”<br>
            is accessed with “mtx” held 1 out of 2 times (1 of these accesses<br>
            strongly imply that it is necessary).<br>
<br>
216 vsl_ts = t; 217 } 218 219 static int /*__match_proto__ (VSLQ_dispatch_f)*/<br>
220 accumulate(struct VSL_data *vsl, struct VSL_transaction * const pt[], 221<br>
void *priv)<br>
<br>
** CID 1364599: Control flow issues (MISSING_BREAK) /bin/varnishhist/<br>
varnishhist.c: 271 in accumulate()<br>
<br>
_____________________________________________________________________________________________________<br>
_ * CID 1364599: Control flow issues (MISSING_BREAK) /bin/varnishhist/<br>
varnishhist.c: 271 in accumulate() 265 !strcasecmp(VSL_CDATA(tr->c->rec.ptr),<br>
266 "retry")) 267 skip = 1; 268 break; 269 case SLT_Timestamp: 270 tsp =<br>
VSL_CDATA(tr->c->rec.ptr);<br>
<br>
            CID 1364599: Control flow issues (MISSING_BREAK) The above case<br>
            falls through to this one.<br>
<br>
271 default: 272 if (tag != match_tag) 273 break; 274 275 if (active_profile-><br>
prefix && 276 strncmp(VSL_CDATA(tr->c->rec.ptr),<br>
<br>
<br>
--<br>
Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20<br>
phk@FreeBSD.ORG         | TCP/IP since RFC 956<br>
FreeBSD committer       | BSD since 4.3-tahoe<br>
Never attribute to malice what can adequately be explained by incompetence.<br>
<br>
_______________________________________________<br>
varnish-dev mailing list<br>
<a href="mailto:varnish-dev@varnish-cache.org" target="_blank">varnish-dev@varnish-cache.org</a><br>
<a href="https://www.varnish-cache.org/lists/mailman/listinfo/varnish-dev" rel="noreferrer" target="_blank">https://www.varnish-cache.org/lists/mailman/listinfo/varnish-dev</a></blockquote></div>