1
1

Fix three things from r15474 (thanks to Brian for noticing):

* bml.h had a change that introduced a variable named "_order" to
   avoid a conflict with a local variable.  The namespace starting
   with _ belongs to the os/compiler/kernel/not us.  So we can't start
   symbols with _.  So I replaced it with arg_order, and also updated
   the threaded equivalent of the macro that was modified.
 * in btl_openib_proc.c, one opal_output accidentally had its string
   reverted from "ompi_modex_recv..." to
   "mca_pml_base_modex_recv....".  This was fixed.
 * The change to ompi/runtime/ompi_preconnect.c was entirely
   reverted; it was an artifact of debugging.

This commit was SVN r15475.

The following SVN revision numbers were found above:
  r15474 --> open-mpi/ompi@8ace07efed
Этот коммит содержится в:
Jeff Squyres 2007-07-18 11:38:06 +00:00
родитель 8ace07efed
Коммит 3bc940ac27
3 изменённых файлов: 8 добавлений и 24 удалений

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

@ -356,19 +356,19 @@ static inline void mca_bml_base_prepare_dst(mca_bml_base_btl_t* bml_btl,
} }
#if OMPI_HAVE_THREAD_SUPPORT #if OMPI_HAVE_THREAD_SUPPORT
#define MCA_BML_BASE_BTL_DES_ALLOC(bml_btl, des, order, \ #define MCA_BML_BASE_BTL_DES_ALLOC(bml_btl, des, arg_order, \
alloc_size, seg_size) \ alloc_size, seg_size) \
do { \ do { \
if( MCA_BTL_NO_ORDER == order && \ if( MCA_BTL_NO_ORDER == arg_order && \
NULL != (des = bml_btl->btl_cache) ) { \ NULL != (des = bml_btl->btl_cache) ) { \
/* atomically acquire the cached descriptor */ \ /* atomically acquire the cached descriptor */ \
if(opal_atomic_cmpset_ptr(&bml_btl->btl_cache, \ if(opal_atomic_cmpset_ptr(&bml_btl->btl_cache, \
des, NULL) == 0) { \ des, NULL) == 0) { \
des = bml_btl->btl_alloc(bml_btl->btl, order, \ des = bml_btl->btl_alloc(bml_btl->btl, arg_order, \
alloc_size); \ alloc_size); \
} \ } \
} else { \ } else { \
des = bml_btl->btl_alloc(bml_btl->btl, order, alloc_size); \ des = bml_btl->btl_alloc(bml_btl->btl, arg_order, alloc_size); \
} \ } \
if( OPAL_LIKELY(des != NULL) ) { \ if( OPAL_LIKELY(des != NULL) ) { \
des->des_src->seg_len = seg_size; \ des->des_src->seg_len = seg_size; \
@ -376,15 +376,15 @@ static inline void mca_bml_base_prepare_dst(mca_bml_base_btl_t* bml_btl,
} \ } \
} while(0) } while(0)
#else #else
#define MCA_BML_BASE_BTL_DES_ALLOC(bml_btl, des, _order, \ #define MCA_BML_BASE_BTL_DES_ALLOC(bml_btl, des, arg_order, \
alloc_size, seg_size) \ alloc_size, seg_size) \
do { \ do { \
if( MCA_BTL_NO_ORDER == _order && \ if( MCA_BTL_NO_ORDER == arg_order && \
NULL != (des = bml_btl->btl_cache) ) { \ NULL != (des = bml_btl->btl_cache) ) { \
bml_btl->btl_cache = NULL; \ bml_btl->btl_cache = NULL; \
des->order = MCA_BTL_NO_ORDER; \ des->order = MCA_BTL_NO_ORDER; \
} else { \ } else { \
des = bml_btl->btl_alloc(bml_btl->btl, _order, alloc_size); \ des = bml_btl->btl_alloc(bml_btl->btl, arg_order, alloc_size); \
} \ } \
if( OPAL_LIKELY(des != NULL) ) { \ if( OPAL_LIKELY(des != NULL) ) { \
des->des_src->seg_len = seg_size; \ des->des_src->seg_len = seg_size; \

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

@ -137,7 +137,7 @@ mca_btl_openib_proc_t* mca_btl_openib_proc_create(ompi_proc_t* ompi_proc)
if(OMPI_SUCCESS != rc) { if(OMPI_SUCCESS != rc) {
opal_output(mca_btl_base_output, "[%s:%d] mca_pml_base_modex_recv failed for peer [%ld,%ld,%ld]", opal_output(mca_btl_base_output, "[%s:%d] ompi_modex_recv failed for peer [%ld,%ld,%ld]",
__FILE__,__LINE__,ORTE_NAME_ARGS(&ompi_proc->proc_name)); __FILE__,__LINE__,ORTE_NAME_ARGS(&ompi_proc->proc_name));
OBJ_RELEASE(module_proc); OBJ_RELEASE(module_proc);
return NULL; return NULL;

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

@ -78,22 +78,6 @@ ompi_init_preconnect_mpi(void)
ret = ompi_request_wait_all(2, requests, MPI_STATUSES_IGNORE); ret = ompi_request_wait_all(2, requests, MPI_STATUSES_IGNORE);
if (OMPI_SUCCESS != ret) return ret; if (OMPI_SUCCESS != ret) return ret;
ret = MCA_PML_CALL(isend(outbuf, 1, MPI_CHAR,
next, 1,
MCA_PML_BASE_SEND_COMPLETE,
MPI_COMM_WORLD,
&requests[1]));
if (OMPI_SUCCESS != ret) return ret;
ret = MCA_PML_CALL(irecv(inbuf, 1, MPI_CHAR,
prev, 1,
MPI_COMM_WORLD,
&requests[0]));
if(OMPI_SUCCESS != ret) return ret;
ret = ompi_request_wait_all(2, requests, MPI_STATUSES_IGNORE);
if (OMPI_SUCCESS != ret) return ret;
} }
return ret; return ret;