From d82dc196e027f76723ca71ec0613669468c940a8 Mon Sep 17 00:00:00 2001 From: Patrick Pelissier Date: Fri, 16 Mar 2018 23:55:16 +0100 Subject: [PATCH] Fix datarace (?) if support for pop deferred has been activated (a rewake of thread may be lost) --- m-buffer.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/m-buffer.h b/m-buffer.h index a3e4926a..ec577c45 100644 --- a/m-buffer.h +++ b/m-buffer.h @@ -293,7 +293,7 @@ M_C(name, _init)(buffer_t v, size_t size) \ /* Increment number of elements of the buffer */ \ previousSize = atomic_fetch_add (&v->number[0], 1UL); \ if (BUFFERI_POLICY_P((policy), BUFFER_DEFERRED_POP)) { \ - atomic_fetch_add (&v->number[1], 1UL); \ + previousSize = atomic_fetch_add (&v->number[1], 1UL); \ } \ } \ \