示例#1
0
文件: spml_ucx.c 项目: 00datman/ompi
int mca_spml_ucx_quiet(void)
{
    ucs_status_t err;

    err = ucp_worker_flush(mca_spml_ucx.ucp_worker);
    if (UCS_OK != err) {
        SPML_ERROR("fence failed");
         oshmem_shmem_abort(-1);
         return OSHMEM_ERROR;
    }
    return OSHMEM_SUCCESS;
}
示例#2
0
static int mlx_ep_close(fid_t fid)
{
	struct mlx_ep *fid_ep;
	fid_ep = container_of(fid, struct mlx_ep, ep.ep_fid.fid);

	ucp_worker_flush(fid_ep->worker);
	ucp_worker_destroy(fid_ep->worker);
	if (fid_ep->ep.tx_cq) {
		ofi_atomic_dec32(&(fid_ep->ep.tx_cq->ref));
	}
	if (fid_ep->ep.rx_cq) {
		ofi_atomic_dec32(&(fid_ep->ep.rx_cq->ref));
	}

	ofi_atomic_dec32(&(fid_ep->ep.domain->ref));
	free(fid_ep);
	return FI_SUCCESS;
}