#include "src/instr/instr_private.h"
#include "src/msg/msg_private.h"
+#include <atomic>
+
XBT_LOG_NEW_DEFAULT_SUBCATEGORY(instr_msg, instr, "MSG instrumentation");
void TRACE_msg_set_task_category(msg_task_t task, const char *category)
/* MSG_task_create related function*/
void TRACE_msg_task_create(msg_task_t task)
{
- static long long counter = 0;
+ static std::atomic_ullong counter{0};
task->counter = counter++;
task->category = nullptr;
container_t process_container = PJ_container_get (instr_process_id(MSG_process_self(), str, len));
type_t type = PJ_type_get ("MSG_PROCESS_STATE", process_container->type);
val_t value = PJ_value_get ("task_execute", type);
- new_pajePushState (MSG_get_clock(), process_container, type, value);
+ new PushStateEvent (MSG_get_clock(), process_container, type, value);
}
}
container_t process_container = PJ_container_get (instr_process_id(MSG_process_self(), str, len));
type_t type = PJ_type_get ("MSG_PROCESS_STATE", process_container->type);
- new_pajePopState (MSG_get_clock(), process_container, type);
+ new PopStateEvent (MSG_get_clock(), process_container, type);
}
}
container_t process_container = PJ_container_get (instr_process_id(MSG_process_self(), str, len));
type_t type = PJ_type_get ("MSG_PROCESS_STATE", process_container->type);
val_t value = PJ_value_get ("receive", type);
- new_pajePushState (MSG_get_clock(), process_container, type, value);
+ new PushStateEvent (MSG_get_clock(), process_container, type, value);
}
}
container_t process_container = PJ_container_get (instr_process_id(MSG_process_self(), str, len));
type_t type = PJ_type_get ("MSG_PROCESS_STATE", process_container->type);
- new_pajePopState (MSG_get_clock(), process_container, type);
+ new PopStateEvent (MSG_get_clock(), process_container, type);
char key[INSTR_DEFAULT_STR_SIZE];
snprintf (key, INSTR_DEFAULT_STR_SIZE, "p%lld", task->counter);
type = PJ_type_get ("MSG_PROCESS_TASK_LINK", PJ_type_get_root());
- new_pajeEndLink(MSG_get_clock(), PJ_container_get_root(), type, process_container, "SR", key);
+ new EndLinkEvent(MSG_get_clock(), PJ_container_get_root(), type, process_container, "SR", key);
}
}
container_t process_container = PJ_container_get (instr_process_id(MSG_process_self(), str, len));
type_t type = PJ_type_get ("MSG_PROCESS_STATE", process_container->type);
val_t value = PJ_value_get ("send", type);
- new_pajePushState (MSG_get_clock(), process_container, type, value);
+ new PushStateEvent (MSG_get_clock(), process_container, type, value);
char key[INSTR_DEFAULT_STR_SIZE];
snprintf (key, INSTR_DEFAULT_STR_SIZE, "p%lld", task->counter);
type = PJ_type_get ("MSG_PROCESS_TASK_LINK", PJ_type_get_root());
- new_pajeStartLink(MSG_get_clock(), PJ_container_get_root(), type, process_container, "SR", key);
+ new StartLinkEvent(MSG_get_clock(), PJ_container_get_root(), type, process_container, "SR", key);
}
return 1;
container_t process_container = PJ_container_get (instr_process_id(MSG_process_self(), str, len));
type_t type = PJ_type_get ("MSG_PROCESS_STATE", process_container->type);
- new_pajePopState (MSG_get_clock(), process_container, type);
+ new PopStateEvent (MSG_get_clock(), process_container, type);
}
}