Commit 418c3610 authored by Geoff Simmons's avatar Geoff Simmons

trackrdrd: now attempting a read memory barrier in the VSL reader

           thread after copying from VSM, and a write barrier in
           the worker thread before sending the data
parent 00c3061b
......@@ -55,6 +55,7 @@
#include <dlfcn.h>
#include "vsb.h"
#include "vmb.h"
#include "vpf.h"
#include "libvarnish.h"
......@@ -637,6 +638,7 @@ append(dataentry *entry, enum VSL_tag_e tag, unsigned xid, char *data,
entry->data[entry->end] = '&';
entry->end++;
memcpy(&entry->data[entry->end], data, datalen);
VWMB();
entry->end += datalen;
if (entry->end > dtbl.w_stats.data_hi)
dtbl.w_stats.data_hi = entry->end;
......
......@@ -130,7 +130,7 @@ wrk_send(void **mq_worker, dataentry *entry, worker_data_t *wrk)
AN(mq_worker);
/* XXX: report entry->incomplete to backend ? */
VMB();
VRMB();
errnum = mqf.send(*mq_worker, entry->data, entry->end,
entry->key, entry->keylen, &err);
if (errnum != 0) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment