From: Millian Poquet Date: Tue, 19 Jan 2016 11:06:44 +0000 (+0100) Subject: Merge branch 'master' of https://github.com/mquinson/simgrid X-Git-Tag: v3_13~1208^2 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/1712e350f8c20fb9312f5e69f1208f814d5484d1?hp=35557e5fd3d3b22e082d016a710532683e70baf1 Merge branch 'master' of https://github.com/mquinson/simgrid --- diff --git a/src/msg/msg_process.cpp b/src/msg/msg_process.cpp index 5d588bdf95..a941ea21ba 100644 --- a/src/msg/msg_process.cpp +++ b/src/msg/msg_process.cpp @@ -165,12 +165,6 @@ msg_process_t MSG_process_create_with_environment(const char *name, simdata->data = data; simdata->last_errno = MSG_OK; - /* The TRACE process is created before the SIMIX one - * to avoid issues when SIMIX decides to start the new - * process right now (before returning the flow control). */ - unsigned int next_pid = SIMIX_process_get_maxpid(); - TRACE_msg_process_create(name, next_pid, host); - /* Let's create the process: SIMIX may decide to start it right now, * even before returning the flow control to us */ process = simcall_process_create(name, code, simdata, sg_host_get_name(host), -1, @@ -180,10 +174,8 @@ msg_process_t MSG_process_create_with_environment(const char *name, /* Undo everything we have just changed */ xbt_free(simdata); return NULL; - // FIXME: is the TRACE process destroyed in this case? } else { - xbt_assert(next_pid == process->pid, "Bad trace pid hack"); simcall_process_on_exit(process,(int_f_pvoid_pvoid_t)TRACE_msg_process_kill,process); } return process; diff --git a/src/simix/smx_process.cpp b/src/simix/smx_process.cpp index aecd61f01b..600de45f34 100644 --- a/src/simix/smx_process.cpp +++ b/src/simix/smx_process.cpp @@ -13,6 +13,7 @@ #include "src/mc/mc_replay.h" #include "src/mc/mc_client.h" #include "src/simix/smx_private.hpp" +#include "src/msg/msg_private.h" #ifdef HAVE_SMPI #include "src/smpi/private.h" @@ -58,7 +59,7 @@ void SIMIX_process_cleanup(smx_process_t process) /* Unregister from the kill timer if any */ if (process->kill_timer != NULL) - SIMIX_timer_remove(process->kill_timer); + SIMIX_timer_remove(process->kill_timer); xbt_os_mutex_acquire(simix_global->mutex); @@ -320,6 +321,9 @@ smx_process_t SIMIX_process_create( sg_host_get_name(process->host), kill_time); process->kill_timer = SIMIX_timer_set(kill_time, kill_process, process); } + + /* Tracing the process creation */ + TRACE_msg_process_create(process->name, process->pid, process->host); } return process; }