1
1

Fixes crash in openib BTL on a heterogeneous cluster Refs trac:1700

This commit was SVN r20113.

The following Trac tickets were found above:
  Ticket 1700 --> https://svn.open-mpi.org/trac/ompi/ticket/1700
Этот коммит содержится в:
Nysal Jan 2008-12-10 22:07:48 +00:00
родитель 4fa13a1a4d
Коммит 6a5454b76a
2 изменённых файлов: 8 добавлений и 0 удалений

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

@ -2836,6 +2836,10 @@ static void handle_wc(mca_btl_openib_device_t* device, const uint32_t cq,
case IBV_WC_RECV: case IBV_WC_RECV:
OPAL_OUTPUT((-1, "Got WC: RDMA_RECV, qp %d, src qp %d, WR ID %p", OPAL_OUTPUT((-1, "Got WC: RDMA_RECV, qp %d, src qp %d, WR ID %p",
wc->qp_num, wc->src_qp, (void*) wc->wr_id)); wc->qp_num, wc->src_qp, (void*) wc->wr_id));
#if !defined(WORDS_BIGENDIAN) && OMPI_ENABLE_HETEROGENEOUS_SUPPORT
wc->imm_data = ntohl(wc->imm_data);
#endif
if(wc->wc_flags & IBV_WC_WITH_IMM) { if(wc->wc_flags & IBV_WC_WITH_IMM) {
endpoint = (mca_btl_openib_endpoint_t*) endpoint = (mca_btl_openib_endpoint_t*)
opal_pointer_array_get_item(device->endpoints, wc->imm_data); opal_pointer_array_get_item(device->endpoints, wc->imm_data);

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

@ -95,7 +95,11 @@ static int post_send(mca_btl_openib_endpoint_t *ep,
sr_desc->opcode = IBV_WR_SEND; sr_desc->opcode = IBV_WR_SEND;
} else { } else {
sr_desc->opcode = IBV_WR_SEND_WITH_IMM; sr_desc->opcode = IBV_WR_SEND_WITH_IMM;
#if !defined(WORDS_BIGENDIAN) && OMPI_ENABLE_HETEROGENEOUS_SUPPORT
sr_desc->imm_data = htonl(ep->rem_info.rem_index);
#else
sr_desc->imm_data = ep->rem_info.rem_index; sr_desc->imm_data = ep->rem_info.rem_index;
#endif
} }
} }