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)
|
bool enable_mpi_threads)
|
||||||
{
|
{
|
||||||
OPAL_MONITORING_PRINT_INFO("coll_module_init");
|
OPAL_MONITORING_PRINT_INFO("coll_module_init");
|
||||||
mca_common_monitoring_init();
|
return mca_common_monitoring_init();
|
||||||
return OMPI_SUCCESS;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static int mca_coll_monitoring_component_register(void)
|
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;
|
return OMPI_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
void mca_common_monitoring_init( void )
|
int mca_common_monitoring_init( void )
|
||||||
{
|
{
|
||||||
if( mca_common_monitoring_enabled &&
|
if( !mca_common_monitoring_enabled ) return OMPI_ERROR;
|
||||||
1 < opal_atomic_add_32(&mca_common_monitoring_hold, 1) ) return; /* Already initialized */
|
if( 1 < opal_atomic_add_32(&mca_common_monitoring_hold, 1) ) return OMPI_SUCCESS; /* Already initialized */
|
||||||
|
|
||||||
char hostname[OPAL_MAXHOSTNAMELEN] = "NA";
|
char hostname[OPAL_MAXHOSTNAMELEN] = "NA";
|
||||||
/* Initialize constant */
|
/* Initialize constant */
|
||||||
@ -220,6 +220,7 @@ void mca_common_monitoring_init( void )
|
|||||||
/* Initialize proc translation hashtable */
|
/* Initialize proc translation hashtable */
|
||||||
common_monitoring_translation_ht = OBJ_NEW(opal_hash_table_t);
|
common_monitoring_translation_ht = OBJ_NEW(opal_hash_table_t);
|
||||||
opal_hash_table_init(common_monitoring_translation_ht, 2048);
|
opal_hash_table_init(common_monitoring_translation_ht, 2048);
|
||||||
|
return OMPI_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
void mca_common_monitoring_finalize( void )
|
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;
|
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_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 void mca_common_monitoring_finalize( void );
|
||||||
OMPI_DECLSPEC int mca_common_monitoring_add_procs(struct ompi_proc_t **procs, size_t nprocs);
|
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)
|
bool enable_mpi_threads)
|
||||||
{
|
{
|
||||||
OPAL_MONITORING_PRINT_INFO("osc_component_init");
|
OPAL_MONITORING_PRINT_INFO("osc_component_init");
|
||||||
mca_common_monitoring_init();
|
return mca_common_monitoring_init();
|
||||||
return OMPI_SUCCESS;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static int mca_osc_monitoring_component_finish(void)
|
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_progress_threads,
|
||||||
bool enable_mpi_threads)
|
bool enable_mpi_threads)
|
||||||
{
|
{
|
||||||
mca_common_monitoring_init();
|
if( (OMPI_SUCCESS == mca_common_monitoring_init()) &&
|
||||||
if( mca_common_monitoring_enabled ) {
|
mca_common_monitoring_enabled ) {
|
||||||
*priority = 0; /* I'm up but don't select me */
|
*priority = 0; /* I'm up but don't select me */
|
||||||
return &mca_pml_monitoring_module;
|
return &mca_pml_monitoring_module;
|
||||||
}
|
}
|
||||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user