X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/281f8c29e177852dcb1591fc31e363e1176857c8..55a9b9fe5663cb2fe2398c14f0e9b11d4a31e3b3:/src/smpi/smpi_base.c diff --git a/src/smpi/smpi_base.c b/src/smpi/smpi_base.c index 952db704fa..2d6a64bbce 100644 --- a/src/smpi/smpi_base.c +++ b/src/smpi/smpi_base.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2007-2013. The SimGrid Team. +/* Copyright (c) 2007-2014. The SimGrid Team. * All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it @@ -331,7 +331,9 @@ void smpi_mpi_start(MPI_Request request) request->real_size=request->size; smpi_datatype_use(request->old_type); smpi_comm_use(request->comm); - request->action = simcall_comm_irecv(mailbox, request->buf, &request->real_size, &match_recv, request); + request->action = simcall_comm_irecv(mailbox, request->buf, + &request->real_size, &match_recv, + request, -1.0); //integrate pseudo-timing for buffering of small messages, do not bother to execute the simcall if 0 double sleeptime = request->detached ? smpi_or(request->size) : 0.0; @@ -762,12 +764,11 @@ void smpi_mpi_wait(MPI_Request * request, MPI_Status * status) if ((*request)->action != NULL) { // this is not a detached send simcall_comm_wait((*request)->action, -1.0); - } - #ifdef HAVE_MC if(MC_is_active()) (*request)->action->comm.dst_data = NULL; // dangling pointer : dst_data is freed with a wait, need to set it to NULL for system state comparison #endif + } finish_wait(request, status); *request = MPI_REQUEST_NULL;