1
1

btl/scif: do not return resource busy if we started a connection attempt.

Resolves a hang when using scif for shared memory transfers. This is a
simple change and doesn't require a review.

cmr=v1.7.4:reviewer=ompi-rm1.7

This commit was SVN r29653.
Этот коммит содержится в:
Nathan Hjelm 2013-11-11 19:36:34 +00:00
родитель b5ce72cc15
Коммит 3d3c29ae96

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

@ -173,11 +173,6 @@ int mca_btl_scif_send (struct mca_btl_base_module_t *btl,
if (OPAL_UNLIKELY(MCA_BTL_SCIF_EP_STATE_CONNECTED != endpoint->state)) { if (OPAL_UNLIKELY(MCA_BTL_SCIF_EP_STATE_CONNECTED != endpoint->state)) {
rc = mca_btl_scif_ep_connect (endpoint); rc = mca_btl_scif_ep_connect (endpoint);
if (OPAL_UNLIKELY(MCA_BTL_SCIF_EP_STATE_CONNECTED != endpoint->state)) { if (OPAL_UNLIKELY(MCA_BTL_SCIF_EP_STATE_CONNECTED != endpoint->state)) {
/* something went wrong. have the pml try again later. */
if (MCA_BTL_SCIF_EP_STATE_INIT == endpoint->state) {
return OMPI_ERR_RESOURCE_BUSY;
}
/* the receiver was not ready to handle the fragment. queue up the fragment. */ /* the receiver was not ready to handle the fragment. queue up the fragment. */
descriptor->des_flags |= MCA_BTL_DES_SEND_ALWAYS_CALLBACK; descriptor->des_flags |= MCA_BTL_DES_SEND_ALWAYS_CALLBACK;
opal_list_append (&endpoint->frag_wait_list, (opal_list_item_t *) descriptor); opal_list_append (&endpoint->frag_wait_list, (opal_list_item_t *) descriptor);