1
1

propogate fix for out of buffered send memory space to dr and ob1 - thanks

George.

This commit was SVN r16593.
Этот коммит содержится в:
Rich Graham 2007-10-27 00:17:53 +00:00
родитель 00da8605a5
Коммит 67f4b69848
2 изменённых файлов: 6 добавлений и 2 удалений

Просмотреть файл

@ -292,6 +292,9 @@ int mca_pml_base_bsend_request_alloc(ompi_request_t* request)
/* release resources when request is freed */ /* release resources when request is freed */
sendreq->req_base.req_pml_complete = true; sendreq->req_base.req_pml_complete = true;
OPAL_THREAD_UNLOCK(&mca_pml_bsend_mutex); OPAL_THREAD_UNLOCK(&mca_pml_bsend_mutex);
/* progress communications, with the hope that more resources
* will be freed */
opal_progress();
return OMPI_ERR_BUFFER; return OMPI_ERR_BUFFER;
} }
@ -322,6 +325,9 @@ void* mca_pml_base_bsend_request_alloc_buf( size_t length )
if(NULL == buf) { if(NULL == buf) {
/* release resources when request is freed */ /* release resources when request is freed */
OPAL_THREAD_UNLOCK(&mca_pml_bsend_mutex); OPAL_THREAD_UNLOCK(&mca_pml_bsend_mutex);
/* progress communications, with the hope that more resources
* will be freed */
opal_progress();
return NULL; return NULL;
} }

Просмотреть файл

@ -225,8 +225,6 @@ do { \
sendreq->req_buff = \ sendreq->req_buff = \
mca_pml_base_bsend_request_alloc_buf(sendreq->req_count); \ mca_pml_base_bsend_request_alloc_buf(sendreq->req_count); \
if (NULL == sendreq->req_buff) { \ if (NULL == sendreq->req_buff) { \
/* progress to complete outstanding sends and free resources */ \
opal_progress(); \
ret = MPI_ERR_BUFFER; \ ret = MPI_ERR_BUFFER; \
} else { \ } else { \
iov.iov_base = (IOVBASE_TYPE*)sendreq->req_buff; \ iov.iov_base = (IOVBASE_TYPE*)sendreq->req_buff; \