From e6b086a2fdd22931c0a2c75fbba13c50821d108c Mon Sep 17 00:00:00 2001 From: Martin Quinson Date: Thu, 5 Oct 2017 08:21:33 +0200 Subject: [PATCH 1/1] this variable is accessed concurrently (thanks TSan) --- src/msg/msg_private.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/msg/msg_private.h b/src/msg/msg_private.h index 33d241fb35..656d67fc6e 100644 --- a/src/msg/msg_private.h +++ b/src/msg/msg_private.h @@ -12,6 +12,8 @@ #include "src/kernel/activity/ExecImpl.hpp" #include "xbt/Extendable.hpp" +#include + /**************** datatypes **********************************/ /**************************** Host Extension *********************************/ namespace simgrid { @@ -90,7 +92,7 @@ public: /************************** Global variables ********************************/ typedef struct MSG_Global { int debug_multiple_use; /* whether we want an error message when reusing the same Task for 2 things */ - unsigned long int sent_msg; /* Total amount of messages sent during the simulation */ + std::atomic_int_fast32_t sent_msg; /* Total amount of messages sent during the simulation */ void (*task_copy_callback) (msg_task_t task, msg_process_t src, msg_process_t dst); void_f_pvoid_t process_data_cleanup; } s_MSG_Global_t; -- 2.20.1