Protect the monitoring infrastructure initialization.
Этот коммит содержится в:
родитель
c885ee3f3c
Коммит
f8ffec926e
@ -106,8 +106,7 @@ static int mca_coll_monitoring_component_init(bool enable_progress_threads,
|
||||
bool enable_mpi_threads)
|
||||
{
|
||||
OPAL_MONITORING_PRINT_INFO("coll_module_init");
|
||||
mca_common_monitoring_init();
|
||||
return OMPI_SUCCESS;
|
||||
return mca_common_monitoring_init();
|
||||
}
|
||||
|
||||
static int mca_coll_monitoring_component_register(void)
|
||||
|
@ -203,10 +203,10 @@ static int mca_common_monitoring_comm_size_notify(mca_base_pvar_t *pvar,
|
||||
return OMPI_ERROR;
|
||||
}
|
||||
|
||||
void mca_common_monitoring_init( void )
|
||||
int mca_common_monitoring_init( void )
|
||||
{
|
||||
if( mca_common_monitoring_enabled &&
|
||||
1 < opal_atomic_add_32(&mca_common_monitoring_hold, 1) ) return; /* Already initialized */
|
||||
if( !mca_common_monitoring_enabled ) return OMPI_ERROR;
|
||||
if( 1 < opal_atomic_add_32(&mca_common_monitoring_hold, 1) ) return OMPI_SUCCESS; /* Already initialized */
|
||||
|
||||
char hostname[OPAL_MAXHOSTNAMELEN] = "NA";
|
||||
/* Initialize constant */
|
||||
@ -220,6 +220,7 @@ void mca_common_monitoring_init( void )
|
||||
/* Initialize proc translation hashtable */
|
||||
common_monitoring_translation_ht = OBJ_NEW(opal_hash_table_t);
|
||||
opal_hash_table_init(common_monitoring_translation_ht, 2048);
|
||||
return OMPI_SUCCESS;
|
||||
}
|
||||
|
||||
void mca_common_monitoring_finalize( void )
|
||||
|
@ -46,7 +46,7 @@ extern int mca_common_monitoring_current_state;
|
||||
extern opal_hash_table_t *common_monitoring_translation_ht;
|
||||
|
||||
OMPI_DECLSPEC void mca_common_monitoring_register(void*pml_monitoring_component);
|
||||
OMPI_DECLSPEC void mca_common_monitoring_init( void );
|
||||
OMPI_DECLSPEC int mca_common_monitoring_init( void );
|
||||
OMPI_DECLSPEC void mca_common_monitoring_finalize( void );
|
||||
OMPI_DECLSPEC int mca_common_monitoring_add_procs(struct ompi_proc_t **procs, size_t nprocs);
|
||||
|
||||
|
@ -46,8 +46,7 @@ static int mca_osc_monitoring_component_init(bool enable_progress_threads,
|
||||
bool enable_mpi_threads)
|
||||
{
|
||||
OPAL_MONITORING_PRINT_INFO("osc_component_init");
|
||||
mca_common_monitoring_init();
|
||||
return OMPI_SUCCESS;
|
||||
return mca_common_monitoring_init();
|
||||
}
|
||||
|
||||
static int mca_osc_monitoring_component_finish(void)
|
||||
|
@ -144,8 +144,8 @@ mca_pml_monitoring_component_init(int* priority,
|
||||
bool enable_progress_threads,
|
||||
bool enable_mpi_threads)
|
||||
{
|
||||
mca_common_monitoring_init();
|
||||
if( mca_common_monitoring_enabled ) {
|
||||
if( (OMPI_SUCCESS == mca_common_monitoring_init()) &&
|
||||
mca_common_monitoring_enabled ) {
|
||||
*priority = 0; /* I'm up but don't select me */
|
||||
return &mca_pml_monitoring_module;
|
||||
}
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user