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.
Этот коммит содержится в:
родитель
2ed7ef11c2
Коммит
e2f73b7edb
@ -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 \
|
||||
|
@ -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;
|
||||
}
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user