X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/f10c9f64beca3d0c8c10fc04ab4b8044000631d4..48af4c8427d171d3e05d39116b02e441f2391374:/src/smpi/smpi_global.c diff --git a/src/smpi/smpi_global.c b/src/smpi/smpi_global.c index fbf18b4e80..3cb7b93633 100644 --- a/src/smpi/smpi_global.c +++ b/src/smpi/smpi_global.c @@ -93,6 +93,7 @@ void smpi_process_init(int *argc, char ***argv) if(temp_bar != NULL) data->finalization_barrier = temp_bar; data->index = index; data->instance_id = instance_id; + xbt_free(simcall_process_get_data(proc)); simcall_process_set_data(proc, data); if (*argc > 3) { free((*argv)[1]); @@ -132,10 +133,14 @@ void smpi_process_destroy(void) */ void smpi_process_finalize(void) { + // This leads to an explosion of the search graph + // which cannot be reduced: + if(MC_is_active()) + return; + int index = smpi_process_index(); // wait for all pending asynchronous comms to finish xbt_barrier_wait(process_data[index_to_process_data[index]]->finalization_barrier); - } /**