From: Martin Quinson Date: Tue, 14 Jul 2015 22:08:57 +0000 (+0200) Subject: Revert "A candidate patch to Github issue #15. Three problems related to TRACE might... X-Git-Tag: v3_12~520 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/6fec083be4f715ea6aaae2cebe7444953f0166fc Revert "A candidate patch to Github issue #15. Three problems related to TRACE might be corrected by this patch." This reverts commit 58a9c67822f4640964044ec485426d090bcb123f. --- diff --git a/src/msg/instr_msg_process.c b/src/msg/instr_msg_process.c index cc1bd8e589..c2307ca7c7 100644 --- a/src/msg/instr_msg_process.c +++ b/src/msg/instr_msg_process.c @@ -68,12 +68,9 @@ void TRACE_msg_process_destroy (const char *process_name, int process_pid, msg_h int len = INSTR_DEFAULT_STR_SIZE; char str[INSTR_DEFAULT_STR_SIZE]; - // Avoids multiple destroys of the same process - container_t process = PJ_container_get_or_null (instr_process_id_2 (process_name, process_pid, str, len)); - if (process){ - PJ_container_remove_from_parent (process); - PJ_container_free (process); - } + 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(smx_process_exit_status_t status, msg_process_t process) @@ -137,7 +134,12 @@ void TRACE_msg_process_sleep_out(msg_process_t process) void TRACE_msg_process_end(msg_process_t process) { if (TRACE_msg_process_is_enabled()) { + int len = INSTR_DEFAULT_STR_SIZE; + char str[INSTR_DEFAULT_STR_SIZE]; + //that's the end, let's destroy it - TRACE_msg_process_destroy(MSG_process_get_name (process), MSG_process_get_PID (process), MSG_process_get_host (process)); + container_t container = PJ_container_get (instr_process_id(process, str, len)); + PJ_container_remove_from_parent (container); + PJ_container_free (container); } } diff --git a/src/msg/msg_process.c b/src/msg/msg_process.c index 419e710c35..44d3838ad8 100644 --- a/src/msg/msg_process.c +++ b/src/msg/msg_process.c @@ -164,14 +164,12 @@ msg_process_t MSG_process_create_with_environment(const char *name, simdata->data = data; simdata->last_errno = MSG_OK; - int future_simix_process_pid = SIMIX_process_get_maxpid(); - TRACE_msg_process_create(name, future_simix_process_pid, host); - /* Let's create the process: SIMIX may decide to start it right now, * even before returning the flow control to us */ - simcall_process_create(&process, name, code, simdata, sg_host_name(host), -1, + simcall_process_create(&process, name, code, simdata, sg_host_name(host), -1, argc, argv, properties,0); - xbt_assert(future_simix_process_pid == SIMIX_process_get_PID(process)); + + TRACE_msg_process_create(name, SIMIX_process_get_PID(process), host); if (!process) { /* Undo everything we have just changed */