1
1

Adapt to the last commits from Tim.

This commit was SVN r5837.
Этот коммит содержится в:
George Bosilca 2005-05-23 23:05:15 +00:00
родитель 2739c0b0c5
Коммит 4a7211468b
6 изменённых файлов: 22 добавлений и 26 удалений

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

@ -41,8 +41,7 @@ mca_pml_uniq_t mca_pml_uniq = {
{
mca_pml_uniq_add_procs,
mca_pml_uniq_del_procs,
mca_pml_uniq_add_ptls,
mca_pml_uniq_control,
mca_pml_uniq_enable,
mca_pml_uniq_progress,
mca_pml_uniq_add_comm,
mca_pml_uniq_del_comm,
@ -92,13 +91,12 @@ static int ptl_exclusivity_compare(const void* arg1, const void* arg2)
}
int mca_pml_uniq_add_ptls(ompi_list_t *ptls)
int mca_pml_uniq_add_ptls( void )
{
/* build an array of ptls and ptl modules */
mca_ptl_base_selected_module_t* selected_ptl;
size_t num_ptls = ompi_list_get_size(ptls);
size_t num_ptls = ompi_list_get_size(&mca_ptl_base_modules_initialized);
size_t cache_bytes = 0;
mca_pml_uniq.uniq_num_ptl_modules = 0;
mca_pml_uniq.uniq_num_ptl_progress = 0;
mca_pml_uniq.uniq_num_ptl_components = 0;
@ -111,9 +109,11 @@ int mca_pml_uniq_add_ptls(ompi_list_t *ptls)
return OMPI_ERR_OUT_OF_RESOURCE;
}
for(selected_ptl = (mca_ptl_base_selected_module_t*)ompi_list_get_first(ptls);
selected_ptl != (mca_ptl_base_selected_module_t*)ompi_list_get_end(ptls);
selected_ptl = (mca_ptl_base_selected_module_t*)ompi_list_get_next(selected_ptl)) {
for(selected_ptl = (mca_ptl_base_selected_module_t*)
ompi_list_get_first(&mca_ptl_base_modules_initialized);
selected_ptl != (mca_ptl_base_selected_module_t*)
ompi_list_get_end(&mca_ptl_base_modules_initialized);
selected_ptl = (mca_ptl_base_selected_module_t*)ompi_list_get_next(selected_ptl)) {
mca_ptl_base_module_t *ptl = selected_ptl->pbsm_module;
size_t i;
@ -165,12 +165,13 @@ int mca_pml_uniq_add_ptls(ompi_list_t *ptls)
* Pass control information through to all PTL modules.
*/
int mca_pml_uniq_control(int param, void* value, size_t size)
int mca_pml_uniq_enable( bool enable )
{
size_t i;
int value = enable;
for( i = 0; i < mca_pml_uniq.uniq_num_ptl_components; i++ ) {
if(NULL != mca_pml_uniq.uniq_ptl_components[i]->ptlm_control) {
int rc = mca_pml_uniq.uniq_ptl_components[i]->ptlm_control(param,value,size);
int rc = mca_pml_uniq.uniq_ptl_components[i]->ptlm_control(MCA_PTL_ENABLE,&value,sizeof(value));
if(rc != OMPI_SUCCESS)
return rc;
}

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

@ -111,14 +111,10 @@ extern int mca_pml_uniq_del_procs(
size_t nprocs
);
extern int mca_pml_uniq_add_ptls(
ompi_list_t *ptls
);
extern int mca_pml_uniq_add_ptls(void);
extern int mca_pml_uniq_control(
int param,
void *size,
size_t value
extern int mca_pml_uniq_enable(
bool enable
);
extern int mca_pml_uniq_progress(void);
@ -223,7 +219,6 @@ extern int mca_pml_uniq_start(
pml_request->req_free_called = true; \
if( pml_request->req_pml_complete == true) \
{ \
OMPI_REQUEST_FINI(*(request)); \
switch(pml_request->req_type) { \
case MCA_PML_REQUEST_SEND: \
{ \

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

@ -180,7 +180,7 @@ mca_pml_base_module_t* mca_pml_uniq_component_init(int* priority,
if(rc != OMPI_SUCCESS)
return NULL;
mca_pml_teg_add_ptls();
mca_pml_uniq_add_ptls();
return &mca_pml_uniq.super;
}

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

@ -44,7 +44,7 @@ int mca_pml_uniq_iprobe(int src,
ompi_progress();
}
}
MCA_PML_UNIQ_RECV_REQUEST_RETURN( &recvreq );
MCA_PML_BASE_RECV_REQUEST_FINI( &recvreq.req_recv );
return rc;
}
@ -63,7 +63,7 @@ int mca_pml_uniq_probe(int src,
MCA_PML_UNIQ_RECV_REQUEST_INIT(&recvreq, NULL, 0, &ompi_mpi_char, src, tag, comm, true);
if ((rc = mca_pml_uniq_recv_request_start(&recvreq)) != OMPI_SUCCESS) {
MCA_PML_UNIQ_RECV_REQUEST_RETURN( &recvreq );
MCA_PML_BASE_RECV_REQUEST_FINI( &recvreq.req_recv );
return rc;
}
@ -87,7 +87,7 @@ int mca_pml_uniq_probe(int src,
if (NULL != status) {
*status = recvreq.req_recv.req_base.req_ompi.req_status;
}
MCA_PML_UNIQ_RECV_REQUEST_RETURN( &recvreq );
MCA_PML_BASE_RECV_REQUEST_FINI( &recvreq.req_recv );
return OMPI_SUCCESS;
}

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

@ -75,9 +75,9 @@ OBJ_CLASS_DECLARATION(mca_pml_uniq_recv_request_t);
*
* @param request (IN) Receive request.
*/
#define MCA_PML_UNIQ_RECV_REQUEST_RETURN(request) \
do { \
MCA_PML_BASE_RECV_REQUEST_RETURN( &((request)->req_recv) ); \
#define MCA_PML_UNIQ_RECV_REQUEST_RETURN(request) \
do { \
MCA_PML_BASE_RECV_REQUEST_FINI( &((request)->req_recv) ); \
OMPI_FREE_LIST_RETURN(&mca_pml_uniq.uniq_recv_requests, (ompi_list_item_t*)(request)); \
} while(0)

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

@ -122,7 +122,7 @@ OBJ_CLASS_DECLARATION(mca_pml_uniq_send_request_t);
mca_pml_base_ptl_t* ptl_base = ptl->ptl_base; \
\
/* Let the base handle the reference counts */ \
MCA_PML_BASE_SEND_REQUEST_RETURN( &((sendreq)->req_send) ); \
MCA_PML_BASE_SEND_REQUEST_FINI( &((sendreq)->req_send) ); \
\
/* \
* If there is a cache associated with the ptl - first attempt \