Fix situation where we were not propogating error codes from ROMIO
into non-blocking request status fields, so it was never being relayed to the user This commit was SVN r15296.
Этот коммит содержится в:
родитель
25e52238ab
Коммит
872623a527
@ -279,10 +279,8 @@ static int progress()
|
|||||||
romio_rq = ((mca_io_romio_request_t *) item)->romio_rq;
|
romio_rq = ((mca_io_romio_request_t *) item)->romio_rq;
|
||||||
ret = ROMIO_PREFIX(MPIO_Test)(&romio_rq, &flag,
|
ret = ROMIO_PREFIX(MPIO_Test)(&romio_rq, &flag,
|
||||||
&(((ompi_request_t *) item)->req_status));
|
&(((ompi_request_t *) item)->req_status));
|
||||||
if (ret < 0) {
|
if ((0 != ret) || (0 != flag)) {
|
||||||
OPAL_THREAD_UNLOCK (&mca_io_romio_mutex);
|
ioreq->super.req_status.MPI_ERROR = ret;
|
||||||
return ret;
|
|
||||||
} else if (1 == flag) {
|
|
||||||
++count;
|
++count;
|
||||||
/* we're done, so remove us from the pending list */
|
/* we're done, so remove us from the pending list */
|
||||||
opal_list_remove_item(&mca_io_romio_pending_requests, item);
|
opal_list_remove_item(&mca_io_romio_pending_requests, item);
|
||||||
@ -297,7 +295,7 @@ static int progress()
|
|||||||
ret = ompi_request_free((ompi_request_t**) &ioreq);
|
ret = ompi_request_free((ompi_request_t**) &ioreq);
|
||||||
if (OMPI_SUCCESS != ret) {
|
if (OMPI_SUCCESS != ret) {
|
||||||
OPAL_THREAD_UNLOCK(&mca_io_romio_mutex);
|
OPAL_THREAD_UNLOCK(&mca_io_romio_mutex);
|
||||||
return ret;
|
return count;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user