コード例 #1
0
ファイル: spml_ikrit.c プロジェクト: gpaulsen/ompi
static inline mca_spml_ikrit_get_request_t *alloc_get_req(void)
{
    mca_spml_ikrit_get_request_t *req;
    opal_free_list_item_t* item;

    item = opal_free_list_wait (&mca_spml_base_get_requests);
    assert(item != NULL);

    req = (mca_spml_ikrit_get_request_t *) item;
    opal_memchecker_base_mem_undefined(req, sizeof(*req));
    return req;
}
コード例 #2
0
ファイル: spml_ikrit.c プロジェクト: XuanWang1982/ompi
static inline mca_spml_ikrit_get_request_t *alloc_get_req(void)
{
    mca_spml_ikrit_get_request_t *req;
    opal_free_list_item_t* item;

    item = opal_free_list_wait (&mca_spml_base_get_requests);

    req = (mca_spml_ikrit_get_request_t *) item;
    req->req_get.req_base.req_free_called = false;
    req->req_get.req_base.req_oshmem.req_complete = false;

    return req;
}
コード例 #3
0
ファイル: coll_hcoll_rte.c プロジェクト: XuanWang1982/ompi
static void* get_coll_handle(void)
{
    ompi_request_t *ompi_req;
    opal_free_list_item_t *item;
    item = opal_free_list_wait (&(mca_coll_hcoll_component.requests));
    if (OPAL_UNLIKELY(NULL == item)) {
        HCOL_ERROR("Wait for free list failed.\n");
        return NULL;
    }
    ompi_req = (ompi_request_t *)item;
    OMPI_REQUEST_INIT(ompi_req,false);
    ompi_req->req_complete_cb = NULL;
    ompi_req->req_status.MPI_ERROR = MPI_SUCCESS;
    ompi_req->req_free = request_free;
    return (void *)ompi_req;
}
コード例 #4
0
static inline mca_spml_ikrit_get_request_t *alloc_get_req(void)
{
    mca_spml_ikrit_get_request_t *req;
    opal_free_list_item_t* item;

    item = opal_free_list_wait (&mca_spml_base_get_requests);

    req = (mca_spml_ikrit_get_request_t *) item;
    opal_memchecker_base_mem_undefined(req, sizeof(*req));
    opal_memchecker_base_mem_defined(&req->req_get.req_base,
                                     sizeof(req->req_get.req_base));

    req->req_get.req_base.req_free_called = false;
    req->req_get.req_base.req_oshmem.req_complete = false;

    return req;
}