1
1

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.
Этот коммит содержится в:
Brian Barrett 2007-07-05 22:30:42 +00:00
родитель 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;
} }
} }
} }