X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/a9d4a27f57895978422f9cd1f51fd39b939f44fd..64318694f830cd0dd242e4a5c8e091a56286da88:/src/msg/m_process.c diff --git a/src/msg/m_process.c b/src/msg/m_process.c index d049c4aa02..5f586ccbb5 100644 --- a/src/msg/m_process.c +++ b/src/msg/m_process.c @@ -320,7 +320,8 @@ MSG_error_t MSG_process_suspend(m_process_t process) xbt_assert0(((process) && (process->simdata)), "Invalid parameters"); - PAJE_PROCESS_STATE(process,"S"); + // PAJE_PROCESS_STATE(process,"S"); + PAJE_PROCESS_PUSH_STATE(process,"S"); if(process!=MSG_process_self()) { simdata = process->simdata; @@ -373,8 +374,10 @@ MSG_error_t MSG_process_resume(m_process_t process) simdata = process->simdata; + if(simdata->blocked) { - PAJE_PROCESS_STATE(process,"B"); + // PAJE_PROCESS_STATE(process,"B"); + PAJE_PROCESS_POP_STATE(process); simdata->suspended = 0; /* He'll wake up by itself */ MSG_RETURN(MSG_OK); @@ -389,10 +392,12 @@ MSG_error_t MSG_process_resume(m_process_t process) if(simdata_task->compute) { surf_workstation_resource->common_public->resume(simdata_task->compute); - PAJE_PROCESS_STATE(process,"E"); + PAJE_PROCESS_POP_STATE(process); + // PAJE_PROCESS_STATE(process,"E"); } else { - PAJE_PROCESS_STATE(process,"C"); + // PAJE_PROCESS_STATE(process,"C"); + PAJE_PROCESS_POP_STATE(process); surf_workstation_resource->common_public->resume(simdata_task->comm); } @@ -419,7 +424,8 @@ MSG_error_t __MSG_process_block(void) m_task_t dummy = MSG_TASK_UNINITIALIZED; dummy = MSG_task_create("blocked", 0.0, 0, NULL); - PAJE_PROCESS_STATE(process,"B"); + // PAJE_PROCESS_STATE(process,"B"); + PAJE_PROCESS_PUSH_STATE(process,"B"); process->simdata->blocked=1; __MSG_task_execute(process,dummy); @@ -455,6 +461,8 @@ MSG_error_t __MSG_process_unblock(m_process_t process) surf_workstation_resource->common_public->resume(simdata_task->compute); + PAJE_PROCESS_POP_STATE(process); + MSG_RETURN(MSG_OK); }