X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/d9cad55dcc546b3936c278258e7f463ac70066df..4777ff91a4f32bed97ff25eb9c911bebe11e13f3:/src/instr/instr_msg_process.c diff --git a/src/instr/instr_msg_process.c b/src/instr/instr_msg_process.c index e101491298..a2d89013b5 100644 --- a/src/instr/instr_msg_process.c +++ b/src/instr/instr_msg_process.c @@ -24,7 +24,7 @@ char *instr_process_id_2 (const char *process_name, int process_pid, char *str, /* * Instrumentation functions to trace MSG processes (msg_process_t) */ -void TRACE_msg_process_change_host(msg_process_t process, m_host_t old_host, m_host_t new_host) +void TRACE_msg_process_change_host(msg_process_t process, msg_host_t old_host, msg_host_t new_host) { if (TRACE_msg_process_is_enabled()){ static long long int counter = 0; @@ -40,12 +40,10 @@ void TRACE_msg_process_change_host(msg_process_t process, m_host_t old_host, m_h new_pajeStartLink (MSG_get_clock(), PJ_container_get_root(), type, msg, "M", key); //destroy existing container of this process - container_t existing_container = PJ_container_get(instr_process_id(process, str, len)); - PJ_container_remove_from_parent (existing_container); - PJ_container_free(existing_container); + TRACE_msg_process_destroy (MSG_process_get_name (process), MSG_process_get_PID (process), old_host); //create new container on the new_host location - msg = PJ_container_new(instr_process_id(process, str, len), INSTR_MSG_PROCESS, PJ_container_get(SIMIX_host_get_name(new_host->smx_host))); + TRACE_msg_process_create (MSG_process_get_name (process), MSG_process_get_PID (process), new_host); //end link msg = PJ_container_get(instr_process_id(process, str, len)); @@ -54,7 +52,7 @@ void TRACE_msg_process_change_host(msg_process_t process, m_host_t old_host, m_h } } -void TRACE_msg_process_create (const char *process_name, int process_pid, m_host_t host) +void TRACE_msg_process_create (const char *process_name, int process_pid, msg_host_t host) { if (TRACE_msg_process_is_enabled()){ int len = INSTR_DEFAULT_STR_SIZE; @@ -65,14 +63,21 @@ void TRACE_msg_process_create (const char *process_name, int process_pid, m_host } } +void TRACE_msg_process_destroy (const char *process_name, int process_pid, msg_host_t host) +{ + int len = INSTR_DEFAULT_STR_SIZE; + char str[INSTR_DEFAULT_STR_SIZE]; + + container_t process = PJ_container_get (instr_process_id_2 (process_name, process_pid, str, len)); + PJ_container_remove_from_parent (process); + PJ_container_free (process); +} + void TRACE_msg_process_kill(msg_process_t process) { if (TRACE_msg_process_is_enabled()){ - int len = INSTR_DEFAULT_STR_SIZE; - char str[INSTR_DEFAULT_STR_SIZE]; - //kill means that this process no longer exists, let's destroy it - PJ_container_free (PJ_container_get (instr_process_id(process, str, len))); + TRACE_msg_process_destroy (MSG_process_get_name (process), MSG_process_get_PID (process), MSG_process_get_host (process)); } }