From: Martin Quinson Date: Thu, 21 Apr 2016 14:13:19 +0000 (+0200) Subject: Merge branch 'master' of scm.gforge.inria.fr:/gitroot/simgrid/simgrid X-Git-Tag: v3_13~34^2~39 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/9e2f30eca15bf2c12a75bf0d59ee82f7c4553193?hp=-c Merge branch 'master' of scm.gforge.inria.fr:/gitroot/simgrid/simgrid --- 9e2f30eca15bf2c12a75bf0d59ee82f7c4553193 diff --combined src/smpi/smpi_global.cpp index c7744434ef,c2f843f0f9..a6be2497c4 --- a/src/smpi/smpi_global.cpp +++ b/src/smpi/smpi_global.cpp @@@ -117,7 -117,7 +117,7 @@@ void smpi_process_init(int *argc, char data->argc = argc; data->argv = argv; // set the process attached to the mailbox - simcall_rdv_set_receiver(data->mailbox_small, proc); + simcall_mbox_set_receiver(data->mailbox_small, proc); XBT_DEBUG("<%d> New process in the game: %p", index, proc); } xbt_assert(smpi_process_data(), @@@ -412,8 -412,8 +412,8 @@@ void smpi_global_init(void //process_data[i]->index = i; process_data[i]->argc = NULL; process_data[i]->argv = NULL; - process_data[i]->mailbox = simcall_rdv_create(get_mailbox_name(name, i)); - process_data[i]->mailbox_small = simcall_rdv_create(get_mailbox_name_small(name, i)); + process_data[i]->mailbox = simcall_mbox_create(get_mailbox_name(name, i)); + process_data[i]->mailbox_small = simcall_mbox_create(get_mailbox_name_small(name, i)); process_data[i]->mailboxes_mutex = xbt_mutex_init(); process_data[i]->timer = xbt_os_timer_new(); if (MC_is_active()) @@@ -448,30 -448,30 +448,30 @@@ void smpi_global_destroy(void smpi_bench_destroy(); if (MPI_COMM_WORLD != MPI_COMM_UNINITIALIZED){ while (smpi_group_unuse(smpi_comm_group(MPI_COMM_WORLD)) > 0); - xbt_free(MPI_COMM_WORLD); xbt_barrier_destroy(process_data[0]->finalization_barrier); }else{ smpi_deployment_cleanup_instances(); } - MPI_COMM_WORLD = MPI_COMM_NULL; for (i = 0; i < count; i++) { if(process_data[i]->comm_self!=MPI_COMM_NULL){ - smpi_group_unuse(smpi_comm_group(process_data[i]->comm_self)); smpi_comm_destroy(process_data[i]->comm_self); } if(process_data[i]->comm_intra!=MPI_COMM_NULL){ - smpi_group_unuse(smpi_comm_group(process_data[i]->comm_intra)); smpi_comm_destroy(process_data[i]->comm_intra); } xbt_os_timer_free(process_data[i]->timer); - simcall_rdv_destroy(process_data[i]->mailbox); - simcall_rdv_destroy(process_data[i]->mailbox_small); + simcall_mbox_destroy(process_data[i]->mailbox); + simcall_mbox_destroy(process_data[i]->mailbox_small); xbt_mutex_destroy(process_data[i]->mailboxes_mutex); xbt_free(process_data[i]); } xbt_free(process_data); process_data = NULL; + if (MPI_COMM_WORLD != MPI_COMM_UNINITIALIZED) + xbt_free(MPI_COMM_WORLD); + MPI_COMM_WORLD = MPI_COMM_NULL; + xbt_free(index_to_process_data); if(smpi_privatize_global_variables) smpi_destroy_global_memory_segments();