X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/278b7053a106394fc7b09edd2e7ab2b22cfa1088..194df46818e3f10278130de231015fb42a6b29f7:/src/simix/smx_process.c diff --git a/src/simix/smx_process.c b/src/simix/smx_process.c index 32c7075fe2..77578aef1b 100644 --- a/src/simix/smx_process.c +++ b/src/simix/smx_process.c @@ -64,20 +64,12 @@ void SIMIX_process_cleanup(smx_process_t process) action, action->comm.detached, (int)action->state, action->comm.src_proc, action->comm.dst_proc); action->comm.src_proc = NULL; - if (action->comm.detached) { - if (action->comm.refcount == 0) { - XBT_DEBUG("Increase the refcount before destroying it since it's detached"); - /* I'm not supposed to destroy a detached comm from the sender side, - * unless there is no receiver matching the rdv */ - action->comm.refcount++; - SIMIX_comm_destroy(action); - } - else { - XBT_DEBUG("Don't destroy it since its refcount is %d", action->comm.refcount); - } - } else { + /* I'm not supposed to destroy a detached comm from the sender side, */ + if (!action->comm.detached) SIMIX_comm_destroy(action); - } + else + XBT_DEBUG("Don't destroy it since it's a detached comm"); + } else if (action->comm.dst_proc == process){ XBT_DEBUG("Found an unfinished recv comm %p, state %d, src = %p, dst = %p", @@ -502,8 +494,6 @@ void SIMIX_pre_process_resume(smx_simcall_t simcall, smx_process_t process){ void SIMIX_process_resume(smx_process_t process, smx_process_t issuer) { - xbt_assert((process != NULL), "Invalid parameters"); - XBT_IN("process = %p, issuer = %p", process, issuer); if(process->context->iwannadie) { @@ -852,7 +842,7 @@ void SIMIX_process_yield(smx_process_t self) if (self->suspended) { XBT_DEBUG("Hey! I'm suspended."); - xbt_assert(!self->doexception, "Gloups! This exception may be lost by subsequent calls."); + xbt_assert(!self->doexception, "Gasp! This exception may be lost by subsequent calls."); self->suspended = 0; SIMIX_process_suspend(self, self); }