From e2f73b7edbfa2cf7377ff5037e6442342f2ea3f8 Mon Sep 17 00:00:00 2001 From: Mark Taylor Date: Sun, 1 Feb 2004 04:48:18 +0000 Subject: [PATCH] added code to MPIO_Test, so it will also free the MPI request if it is completed. Also set requests to MPI_REQUEST_NULL after free'ing them. (at pressent, MPI-IO ROMIO component does not keep lists of requests for re-use) This commit was SVN r634. --- src/mca/mpi/io/romio/src/Makefile.am | 2 +- src/mca/mpi/io/romio/src/{file_status.c => file_request.c} | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) rename src/mca/mpi/io/romio/src/{file_status.c => file_request.c} (89%) diff --git a/src/mca/mpi/io/romio/src/Makefile.am b/src/mca/mpi/io/romio/src/Makefile.am index 9087f4c955..24d4f8ad0b 100644 --- a/src/mca/mpi/io/romio/src/Makefile.am +++ b/src/mca/mpi/io/romio/src/Makefile.am @@ -15,7 +15,7 @@ libmca_io_romio_la_SOURCES = \ io_romio_module.c \ io_romio.h \ romio_config.h \ - file_status.c \ + file_request.c \ file_open.c \ file_read.c \ file_write.c \ diff --git a/src/mca/mpi/io/romio/src/file_status.c b/src/mca/mpi/io/romio/src/file_request.c similarity index 89% rename from src/mca/mpi/io/romio/src/file_status.c rename to src/mca/mpi/io/romio/src/file_request.c index 4168313d12..1f8ba27d83 100644 --- a/src/mca/mpi/io/romio/src/file_status.c +++ b/src/mca/mpi/io/romio/src/file_request.c @@ -22,6 +22,10 @@ int mca_io_romio_Test(MPI_Request *request, int *flag, MPI_Status *status){ THREAD_LOCK(&mca_io_romio_mutex); ret=mca_io_romio_MPIO_Test(&romio_rq, flag,status); + if (*flag) { + LAM_FREE(*request); + *request = MPI_REQUEST_NULL; + } THREAD_UNLOCK(&mca_io_romio_mutex); return ret; @@ -43,6 +47,7 @@ int mca_io_romio_Wait(MPI_Request *request, MPI_Status *status){ THREAD_UNLOCK(&mca_io_romio_mutex); LAM_FREE(*request); + *request = MPI_REQUEST_NULL; return ret; }