From: "Emilio G. Cota" <c...@braap.org> To avoid undefined behaviour.
Signed-off-by: Emilio G. Cota <c...@braap.org> Message-Id: <20180819091335.22863-2-c...@braap.org> Signed-off-by: Paolo Bonzini <pbonz...@redhat.com> --- include/qemu/rcu_queue.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/qemu/rcu_queue.h b/include/qemu/rcu_queue.h index 01be774..dd7b3be 100644 --- a/include/qemu/rcu_queue.h +++ b/include/qemu/rcu_queue.h @@ -112,7 +112,7 @@ extern "C" { (elm)->field.le_next->field.le_prev = \ (elm)->field.le_prev; \ } \ - *(elm)->field.le_prev = (elm)->field.le_next; \ + atomic_set((elm)->field.le_prev, (elm)->field.le_next); \ } while (/*CONSTCOND*/0) /* List traversal must occur within an RCU critical section. */ -- 1.8.3.1