Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
requests were not being makred uncompleted before being recycled by mallocator.
authormarkls <markls@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Sun, 2 Sep 2007 12:29:28 +0000 (12:29 +0000)
committermarkls <markls@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Sun, 2 Sep 2007 12:29:28 +0000 (12:29 +0000)
A minor bug that caused some confusion; fixed now.

git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4133 48e7efb5-ca39-0410-a469-dd3cf9ba447f

src/smpi/sample/second.c
src/smpi/smpi_global.c
src/smpi/smpi_receiver.c

index d78aeac..5c1d39f 100644 (file)
@@ -13,6 +13,7 @@
 
 #include <stdio.h>
 #include <mpi.h>
 
 #include <stdio.h>
 #include <mpi.h>
+
 main(int argc, char *argv[]) {
   const int tag = 42;         /* Message tag */
   int id, ntasks, source_id, dest_id, err, i;
 main(int argc, char *argv[]) {
   const int tag = 42;         /* Message tag */
   int id, ntasks, source_id, dest_id, err, i;
index 64a4b31..24d7974 100644 (file)
@@ -33,6 +33,10 @@ void smpi_request_free(void *pointer)
 
 void smpi_request_reset(void *pointer)
 {
 
 void smpi_request_reset(void *pointer)
 {
+       smpi_mpi_request_t request = pointer;
+
+       request->completed = 0;
+
        return;
 }
 
        return;
 }
 
index 4acf7a1..bd1d1d9 100644 (file)
@@ -83,12 +83,10 @@ stopsearch:
                } else {
 
                        SIMIX_mutex_lock(request->mutex);
                } else {
 
                        SIMIX_mutex_lock(request->mutex);
-
                        memcpy(request->buf, message->buf, request->datatype->size * request->count);
                        request->src = message->src;
                        request->completed = 1;
                        SIMIX_cond_broadcast(request->cond);
                        memcpy(request->buf, message->buf, request->datatype->size * request->count);
                        request->src = message->src;
                        request->completed = 1;
                        SIMIX_cond_broadcast(request->cond);
-
                        SIMIX_mutex_unlock(request->mutex);
 
                        xbt_free(message->buf);
                        SIMIX_mutex_unlock(request->mutex);
 
                        xbt_free(message->buf);