Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
this variable is accessed concurrently (thanks TSan)
[simgrid.git] / src / msg / msg_private.h
index 9734130..656d67f 100644 (file)
@@ -12,6 +12,8 @@
 #include "src/kernel/activity/ExecImpl.hpp"
 #include "xbt/Extendable.hpp"
 
+#include <atomic>
+
 /**************** 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;
@@ -103,7 +105,7 @@ XBT_PUBLIC_DATA(MSG_Global_t) msg_global;
 /*************************************************************/
 XBT_PRIVATE void MSG_process_cleanup_from_SIMIX(smx_actor_t smx_proc);
 XBT_PRIVATE smx_actor_t MSG_process_create_from_SIMIX(const char* name, std::function<void()> code, void* data,
-                                                      sg_host_t host, xbt_dict_t properties,
+                                                      sg_host_t host, std::map<std::string, std::string>* properties,
                                                       smx_actor_t parent_process);
 XBT_PRIVATE void MSG_comm_copy_data_from_SIMIX(smx_activity_t comm, void* buff, size_t buff_size);
 
@@ -125,7 +127,7 @@ XBT_PRIVATE void TRACE_msg_task_put_end();
 /* declaration of instrumentation functions from msg_process_instr.c */
 XBT_PRIVATE char *instr_process_id (msg_process_t proc, char *str, int len);
 XBT_PRIVATE char *instr_process_id_2 (const char *process_name, int process_pid, char *str, int len);
-XBT_PRIVATE void TRACE_msg_process_change_host(msg_process_t process, msg_host_t old_host, msg_host_t new_host);
+XBT_PRIVATE void TRACE_msg_process_change_host(msg_process_t process, msg_host_t new_host);
 XBT_PRIVATE void TRACE_msg_process_create (const char *process_name, int process_pid, msg_host_t host);
 XBT_PRIVATE void TRACE_msg_process_destroy (const char *process_name, int process_pid);
 XBT_PRIVATE void TRACE_msg_process_kill(smx_process_exit_status_t status, msg_process_t process);