Prevent segfault for case when we release SRQ before srq_create.
This commit was SVN r20872.
Этот коммит содержится в:
родитель
49b60029e6
Коммит
8888c9831c
@ -989,7 +989,8 @@ static int mca_btl_openib_finalize_resources(struct mca_btl_base_module_t* btl)
|
|||||||
&openib_btl->qps[qp].u.srq_qp.pending_frags[0]);
|
&openib_btl->qps[qp].u.srq_qp.pending_frags[0]);
|
||||||
MCA_BTL_OPENIB_CLEAN_PENDING_FRAGS(
|
MCA_BTL_OPENIB_CLEAN_PENDING_FRAGS(
|
||||||
&openib_btl->qps[qp].u.srq_qp.pending_frags[1]);
|
&openib_btl->qps[qp].u.srq_qp.pending_frags[1]);
|
||||||
if (ibv_destroy_srq(openib_btl->qps[qp].u.srq_qp.srq)){
|
if (NULL != openib_btl->qps[qp].u.srq_qp.srq &&
|
||||||
|
ibv_destroy_srq(openib_btl->qps[qp].u.srq_qp.srq)){
|
||||||
BTL_VERBOSE(("Failed to close SRQ %d", qp));
|
BTL_VERBOSE(("Failed to close SRQ %d", qp));
|
||||||
rc = OMPI_ERROR;
|
rc = OMPI_ERROR;
|
||||||
}
|
}
|
||||||
|
@ -1856,6 +1856,7 @@ static int finish_btl_init(mca_btl_openib_module_t *openib_btl)
|
|||||||
opal_list_t);
|
opal_list_t);
|
||||||
openib_btl->qps[qp].u.srq_qp.sd_credits =
|
openib_btl->qps[qp].u.srq_qp.sd_credits =
|
||||||
mca_btl_openib_component.qp_infos[qp].u.srq_qp.sd_max;
|
mca_btl_openib_component.qp_infos[qp].u.srq_qp.sd_max;
|
||||||
|
openib_btl->qps[qp].u.srq_qp.srq = NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user