osc rdma: check for outstanding fragments before completing a request in ompi_osc_rdma_put_complete_flush as well
Signed-off-by: Joseph Schuchart <schuchart@hlrs.de>
Этот коммит содержится в:
родитель
85ed26f2f8
Коммит
caed3b2eed
@ -422,9 +422,11 @@ static void ompi_osc_rdma_put_complete_flush (struct mca_btl_base_module_t *btl,
|
|||||||
ompi_osc_rdma_request_t *request = request = (ompi_osc_rdma_request_t *) ((intptr_t) context & ~1);
|
ompi_osc_rdma_request_t *request = request = (ompi_osc_rdma_request_t *) ((intptr_t) context & ~1);
|
||||||
module = request->module;
|
module = request->module;
|
||||||
|
|
||||||
|
if (0 == OPAL_THREAD_ADD_FETCH32 (&request->outstanding_requests, -1)) {
|
||||||
/* NTH -- TODO: better error handling */
|
/* NTH -- TODO: better error handling */
|
||||||
ompi_osc_rdma_request_complete (request, status);
|
ompi_osc_rdma_request_complete (request, status);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
OSC_RDMA_VERBOSE(status ? MCA_BASE_VERBOSE_ERROR : MCA_BASE_VERBOSE_TRACE, "btl put complete on module %p. local "
|
OSC_RDMA_VERBOSE(status ? MCA_BASE_VERBOSE_ERROR : MCA_BASE_VERBOSE_TRACE, "btl put complete on module %p. local "
|
||||||
"address %p. opal status %d", (void *) module, local_address, status);
|
"address %p. opal status %d", (void *) module, local_address, status);
|
||||||
|
Загрузка…
Ссылка в новой задаче
Block a user