Fix for the oob base open and close functions being invoked twice by
ompi_info -- once directly and once via the rml oob component. This commit was SVN r13152.
Этот коммит содержится в:
родитель
cc905290e4
Коммит
6f7adfe231
@ -9,6 +9,7 @@
|
||||
* University of Stuttgart. All rights reserved.
|
||||
* Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
* All rights reserved.
|
||||
* Copyright (c) 2007 Cisco Systems, Inc. All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -30,6 +31,16 @@
|
||||
int mca_oob_base_close(void)
|
||||
{
|
||||
opal_list_item_t* item;
|
||||
static bool already_closed = false;
|
||||
|
||||
/* Sanity check. This may be able to be removed when the rml/oob
|
||||
interface is re-worked (the current infrastructure may invoke
|
||||
this function twice: once as a standalone, and once via the rml
|
||||
oob component). */
|
||||
if (already_closed) {
|
||||
return ORTE_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
/* Finalize all the oob modules and free their list items */
|
||||
for (item = opal_list_remove_first(&mca_oob_base_modules);
|
||||
@ -55,6 +66,7 @@ int mca_oob_base_close(void)
|
||||
free(mca_oob_base_exclude);
|
||||
|
||||
/* All done */
|
||||
already_closed = true;
|
||||
return ORTE_SUCCESS;
|
||||
}
|
||||
|
||||
|
@ -9,6 +9,7 @@
|
||||
* University of Stuttgart. All rights reserved.
|
||||
* Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
* All rights reserved.
|
||||
* Copyright (c) 2007 Cisco Systems, Inc. All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -57,6 +58,15 @@ int mca_oob_base_open(void)
|
||||
{
|
||||
int param, value;
|
||||
char *mode;
|
||||
static bool already_opened = false;
|
||||
|
||||
/* Sanity check. This may be able to be removed when the rml/oob
|
||||
interface is re-worked (the current infrastructure may invoke
|
||||
this function twice: once as a standalone, and once via the rml
|
||||
oob component). */
|
||||
if (already_opened) {
|
||||
return ORTE_SUCCESS;
|
||||
}
|
||||
|
||||
/* Open up all available components */
|
||||
|
||||
@ -110,6 +120,7 @@ int mca_oob_base_open(void)
|
||||
}
|
||||
|
||||
/* All done */
|
||||
already_opened = true;
|
||||
return ORTE_SUCCESS;
|
||||
}
|
||||
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user