1
1

Clean up a few memory leaks - more to go...

This commit was SVN r7134.
Этот коммит содержится в:
Ralph Castain 2005-09-01 17:38:04 +00:00
родитель f4de8776a6
Коммит 76e622a552
8 изменённых файлов: 393 добавлений и 358 удалений

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

@ -3,14 +3,14 @@
* All rights reserved.
* Copyright (c) 2004-2005 The Trustees of the University of Tennessee.
* All rights reserved.
* Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
* Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
* University of Stuttgart. All rights reserved.
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* $COPYRIGHT$
*
*
* Additional copyrights may follow
*
*
* $HEADER$
*/
@ -25,20 +25,26 @@
#define SIZE_OF_CHAR (sizeof(char) * 8)
#define DEFAULT_BITMAP_SIZE 64
static void orte_bitmap_construct(orte_bitmap_t *bm);
static void orte_bitmap_destruct(orte_bitmap_t *bm);
OBJ_CLASS_INSTANCE(orte_bitmap_t, opal_object_t,
OBJ_CLASS_INSTANCE(orte_bitmap_t, opal_object_t,
orte_bitmap_construct, orte_bitmap_destruct);
static void
orte_bitmap_construct(orte_bitmap_t *bm)
static void
orte_bitmap_construct(orte_bitmap_t *bm)
{
bm->legal_numbits = 0;
bm->array_size = 0;
bm->bitmap = NULL;
size_t size;
size = DEFAULT_BITMAP_SIZE / SIZE_OF_CHAR;
bm->array_size = size + ((size % SIZE_OF_CHAR == 0) ? 0 : 1);
bm->bitmap = (unsigned char *) malloc(bm->array_size);
bm->legal_numbits = SIZE_OF_CHAR*bm->array_size;
memset(bm->bitmap, 0, bm->array_size);
}
@ -51,38 +57,12 @@ orte_bitmap_destruct(orte_bitmap_t *bm)
}
int
orte_bitmap_init(orte_bitmap_t *bm, size_t size)
{
size_t actual_size;
if (NULL == bm) {
ORTE_ERROR_LOG(ORTE_ERR_BAD_PARAM);
return ORTE_ERR_BAD_PARAM;
}
actual_size = size / SIZE_OF_CHAR;
actual_size += (size % SIZE_OF_CHAR == 0) ? 0 : 1;
bm->bitmap = (unsigned char *) malloc(actual_size);
if (NULL == bm->bitmap) {
ORTE_ERROR_LOG(ORTE_ERR_OUT_OF_RESOURCE);
return ORTE_ERR_OUT_OF_RESOURCE;
}
bm->array_size = actual_size;
bm->legal_numbits = SIZE_OF_CHAR*actual_size;
orte_bitmap_clear_all_bits(bm);
return ORTE_SUCCESS;
}
int
orte_bitmap_resize(orte_bitmap_t *bm, size_t bit)
{
size_t index, new_size, i;
index = bit / SIZE_OF_CHAR;
index = bit / SIZE_OF_CHAR;
index += (bit % SIZE_OF_CHAR == 0) ? 0 : 1;
if (index >= bm->array_size) {
@ -90,28 +70,28 @@ orte_bitmap_resize(orte_bitmap_t *bm, size_t bit)
/* We need to allocate more space for the bitmap, since we are
out of range. We dont throw any error here, because this is
valid and we simply expand the bitmap */
new_size = (index / bm->array_size + 1 ) * bm->array_size;
/* New size is just a multiple of the original size to fit in
the index. */
bm->bitmap = (unsigned char *) realloc(bm->bitmap, new_size);
if (NULL == bm->bitmap) {
ORTE_ERROR_LOG(ORTE_ERR_OUT_OF_RESOURCE);
return ORTE_ERR_OUT_OF_RESOURCE;
}
/* zero out the new elements */
for (i = bm->array_size; i < new_size; ++i) {
bm->bitmap[i] = 0;
}
/* Update the array_size */
bm->array_size = new_size;
bm->legal_numbits = new_size*SIZE_OF_CHAR;
}
return ORTE_SUCCESS;
}
@ -131,8 +111,8 @@ orte_bitmap_set_bit(orte_bitmap_t *bm, size_t bit)
ORTE_ERROR_LOG(rc);
return rc;
}
index = bit / SIZE_OF_CHAR;
index = bit / SIZE_OF_CHAR;
offset = bit % SIZE_OF_CHAR;
/* Now set the bit */
@ -150,7 +130,7 @@ orte_bitmap_clear_bit(orte_bitmap_t *bm, size_t bit)
if (NULL == bm) {
ORTE_ERROR_LOG(ORTE_ERR_BAD_PARAM);
return ORTE_ERR_BAD_PARAM;
return ORTE_ERR_BAD_PARAM;
}
/* make sure the bitmap covers the requested bit */
@ -158,11 +138,11 @@ orte_bitmap_clear_bit(orte_bitmap_t *bm, size_t bit)
ORTE_ERROR_LOG(rc);
return rc;
}
index = bit / SIZE_OF_CHAR;
index = bit / SIZE_OF_CHAR;
offset = bit % SIZE_OF_CHAR;
/* now clear the bit */
/* now clear the bit */
bm->bitmap[index] &= ~(1 << offset);
return ORTE_SUCCESS;
}
@ -172,20 +152,20 @@ int
orte_bitmap_is_set_bit(orte_bitmap_t *bm, size_t bit)
{
size_t index, offset;
if ((bit > bm->legal_numbits - 1) || (NULL == bm)) {
ORTE_ERROR_LOG(ORTE_ERR_BAD_PARAM);
return ORTE_ERR_BAD_PARAM;
}
index = bit / SIZE_OF_CHAR;
index = bit / SIZE_OF_CHAR;
offset = bit % SIZE_OF_CHAR;
if (index >= bm->array_size) {
ORTE_ERROR_LOG(ORTE_ERR_BAD_PARAM);
return ORTE_ERR_BAD_PARAM;
}
if (0 != (bm->bitmap[index] & (1 << offset))) {
return (int) true;
}
@ -211,12 +191,12 @@ int
orte_bitmap_set_all_bits(orte_bitmap_t *bm)
{
size_t i;
if (NULL == bm) {
ORTE_ERROR_LOG(ORTE_ERR_BAD_PARAM);
return ORTE_ERR_BAD_PARAM;
}
for (i = 0; i < bm->array_size; ++i) {
bm->bitmap[i] = ~((char) 0);
}
@ -255,7 +235,7 @@ orte_bitmap_find_and_set_first_unset_bit(orte_bitmap_t *bm, size_t *position)
++(*position);
temp >>= 1;
}
/* Now set the bit number */
bm->bitmap[i] |= (bm->bitmap[i] + 1);

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

@ -3,14 +3,14 @@
* All rights reserved.
* Copyright (c) 2004-2005 The Trustees of the University of Tennessee.
* All rights reserved.
* Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
* Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
* University of Stuttgart. All rights reserved.
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* $COPYRIGHT$
*
*
* Additional copyrights may follow
*
*
* $HEADER$
*
*/
@ -49,26 +49,15 @@ struct orte_bitmap_t {
unsigned char *bitmap; /**< The actual bitmap array of characters */
size_t array_size; /**< The actual array size that maintains the bitmap */
size_t legal_numbits; /**< The number of bits which are legal (the
actual bitmap may contain more bits, since
it needs to be rounded to the nearest
char */
actual bitmap may contain more bits, since
it needs to be rounded to the nearest
char */
};
typedef struct orte_bitmap_t orte_bitmap_t;
OMPI_DECLSPEC OBJ_CLASS_DECLARATION(orte_bitmap_t);
/**
* Initializes the bitmap and sets its size. This must be called
* before the bitmap can be actually used
*
* @param bitmap The input bitmap (IN)
* @param size The initial size of the bitmap in terms of bits (IN)
* @return ORTE error code or success
*
*/
OMPI_DECLSPEC int orte_bitmap_init (orte_bitmap_t *bm, size_t size);
/**
* Sizes the bitmap to ensure it has at least the specified number of
@ -94,7 +83,7 @@ OMPI_DECLSPEC int orte_bitmap_resize(orte_bitmap_t *bm, size_t bit);
* @return OMPI error code or success
*
*/
OMPI_DECLSPEC int orte_bitmap_set_bit(orte_bitmap_t *bm, size_t bit);
OMPI_DECLSPEC int orte_bitmap_set_bit(orte_bitmap_t *bm, size_t bit);
/**
@ -130,8 +119,8 @@ OMPI_DECLSPEC int orte_bitmap_is_set_bit(orte_bitmap_t *bm, size_t bit);
* @return err ORTE_SUCCESS on success
*/
OMPI_DECLSPEC int orte_bitmap_find_and_set_first_unset_bit(orte_bitmap_t *bm,
size_t *position);
OMPI_DECLSPEC int orte_bitmap_find_and_set_first_unset_bit(orte_bitmap_t *bm,
size_t *position);
/**
@ -139,7 +128,7 @@ OMPI_DECLSPEC int orte_bitmap_find_and_set_first_unset_bit(orte_bitmap_t *bm,
*
* @param bitmap The input bitmap (IN)
* @return ORTE error code if bm is NULL
*
*
*/
OMPI_DECLSPEC int orte_bitmap_clear_all_bits(orte_bitmap_t *bm);
@ -169,5 +158,5 @@ static inline int orte_bitmap_size(orte_bitmap_t *bm)
#if defined(c_plusplus) || defined(__cplusplus)
}
#endif
#endif

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

@ -275,10 +275,7 @@ orte_gpr_base_module_t *orte_gpr_replica_init(bool *allow_multi_user_threads, bo
}
orte_gpr_replica_globals.num_acted_upon = 0;
if (ORTE_SUCCESS != (rc = orte_bitmap_init(&(orte_gpr_replica_globals.srch_itag), 64))) {
ORTE_ERROR_LOG(rc);
return NULL;
}
OBJ_CONSTRUCT(&(orte_gpr_replica_globals.srch_itag), orte_bitmap_t);
if (orte_gpr_replica_globals.debug) {
opal_output(0, "nb receive setup");
@ -316,31 +313,50 @@ int orte_gpr_replica_finalize(void)
size_t i, j;
orte_gpr_replica_segment_t** seg;
orte_gpr_replica_trigger_t** trig;
orte_gpr_replica_subscription_t** subs;
orte_gpr_replica_callbacks_t* cb;
orte_gpr_replica_local_subscriber_t **lsubs;
orte_gpr_replica_local_trigger_t **ltrigs;
if (orte_gpr_replica_globals.debug) {
opal_output(0, "finalizing gpr replica");
}
seg = (orte_gpr_replica_segment_t**)(orte_gpr_replica.segments)->addr;
for (i=0, j=0; j < orte_gpr_replica.num_segs &&
i < (orte_gpr_replica.segments)->size; i++) {
if (NULL != seg[i]) {
j++;
OBJ_RELEASE(seg[i]);
}
if (NULL != orte_gpr_replica.segments) {
seg = (orte_gpr_replica_segment_t**)(orte_gpr_replica.segments)->addr;
for (i=0, j=0; j < orte_gpr_replica.num_segs &&
i < (orte_gpr_replica.segments)->size; i++) {
if (NULL != seg[i]) {
j++;
OBJ_RELEASE(seg[i]);
}
}
OBJ_RELEASE(orte_gpr_replica.segments);
}
OBJ_RELEASE(orte_gpr_replica.segments);
trig = (orte_gpr_replica_trigger_t**)(orte_gpr_replica.triggers)->addr;
for (i=0, j=0; j < orte_gpr_replica.num_trigs &&
i < (orte_gpr_replica.triggers)->size; i++) {
if (NULL != trig[i]) {
j++;
OBJ_RELEASE(trig[i]);
}
if (NULL != orte_gpr_replica.triggers) {
trig = (orte_gpr_replica_trigger_t**)(orte_gpr_replica.triggers)->addr;
for (i=0, j=0; j < orte_gpr_replica.num_trigs &&
i < (orte_gpr_replica.triggers)->size; i++) {
if (NULL != trig[i]) {
j++;
OBJ_RELEASE(trig[i]);
}
}
OBJ_RELEASE(orte_gpr_replica.triggers);
}
if (NULL != orte_gpr_replica.subscriptions) {
subs = (orte_gpr_replica_subscription_t**)(orte_gpr_replica.subscriptions)->addr;
for (i=0, j=0; j < orte_gpr_replica.num_subs &&
i < (orte_gpr_replica.subscriptions)->size; i++) {
if (NULL != subs[i]) {
j++;
OBJ_RELEASE(subs[i]);
}
}
OBJ_RELEASE(orte_gpr_replica.subscriptions);
}
OBJ_RELEASE(orte_gpr_replica.triggers);
while (NULL != (cb = (orte_gpr_replica_callbacks_t*)opal_list_remove_first(&orte_gpr_replica.callbacks))) {
OBJ_RELEASE(cb);
@ -348,6 +364,31 @@ int orte_gpr_replica_finalize(void)
OBJ_DESTRUCT(&orte_gpr_replica.callbacks);
/* clear the local subscriptions and triggers */
lsubs = (orte_gpr_replica_local_subscriber_t**)(orte_gpr_replica_globals.local_subscriptions)->addr;
if (NULL != orte_gpr_replica_globals.local_subscriptions) {
for (i=0, j=0; j < orte_gpr_replica_globals.num_local_subs &&
i < (orte_gpr_replica_globals.local_subscriptions)->size; i++) {
if (NULL != lsubs[i]) {
j++;
OBJ_RELEASE(lsubs[i]);
}
}
OBJ_RELEASE(orte_gpr_replica_globals.local_subscriptions);
}
ltrigs = (orte_gpr_replica_local_trigger_t**)(orte_gpr_replica_globals.local_triggers)->addr;
if (NULL != orte_gpr_replica_globals.local_triggers) {
for (i=0, j=0; j < orte_gpr_replica_globals.num_local_trigs &&
i < (orte_gpr_replica_globals.local_triggers)->size; i++) {
if (NULL != ltrigs[i]) {
j++;
OBJ_RELEASE(ltrigs[i]);
}
}
OBJ_RELEASE(orte_gpr_replica_globals.local_triggers);
}
/* clean up the globals */
if (NULL != orte_gpr_replica_globals.srch_cptr) {
@ -358,6 +399,10 @@ int orte_gpr_replica_finalize(void)
OBJ_RELEASE(orte_gpr_replica_globals.overwritten);
}
if (NULL != orte_gpr_replica_globals.sub_ptrs) {
OBJ_RELEASE(orte_gpr_replica_globals.sub_ptrs);
}
if (NULL != orte_gpr_replica_globals.srch_ival) {
OBJ_RELEASE(orte_gpr_replica_globals.srch_ival);
}
@ -366,6 +411,8 @@ int orte_gpr_replica_finalize(void)
OBJ_RELEASE(orte_gpr_replica_globals.acted_upon);
}
OBJ_DESTRUCT(&(orte_gpr_replica_globals.srch_itag));
/* All done */
if (orte_gpr_replica_globals.isolate) {
return ORTE_SUCCESS;

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

@ -715,7 +715,7 @@ int mca_oob_tcp_init(void)
int rc;
opal_list_item_t* item;
char *tmp, *tmp2, *tmp3;
size_t num_tokens;
size_t i, num_tokens;
/* random delay to stagger connections back to seed */
#if defined(WIN32)
@ -860,6 +860,11 @@ int mca_oob_tcp_init(void)
}
free(segment);
for(i=0; i < num_tokens; i++) {
free(tokens[i]);
tokens[i] = NULL;
}
if (NULL != tokens) free(tokens);
free(values[0].byteobject.bytes);
free(values[1].strptr);
@ -951,7 +956,8 @@ char* mca_oob_tcp_get_addr(void)
if(ptr != contact_info) {
ptr += sprintf(ptr, ";");
}
ptr += sprintf(ptr, "tcp://%s:%d", inet_ntoa(addr.sin_addr), ntohs(mca_oob_tcp_component.tcp_listen_port));
ptr += sprintf(ptr, "tcp://%s:%d", inet_ntoa(addr.sin_addr),
ntohs(mca_oob_tcp_component.tcp_listen_port));
}
return contact_info;
}

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

@ -126,6 +126,8 @@ int orte_rmgr_base_proc_stage_gate_init(orte_jobid_t job)
if (ORTE_SUCCESS != (rc = orte_schema.get_std_trigger_name(&trig_name,
trig_names[i], job))) {
ORTE_ERROR_LOG(rc);
free(tokens[0]);
free(segment);
free(trig_keys[0]);
free(trig_keys[1]);
return rc;
@ -137,6 +139,8 @@ int orte_rmgr_base_proc_stage_gate_init(orte_jobid_t job)
segment, tokens, 2, trig_keys,
orte_rmgr_base_proc_stage_gate_mgr, NULL))) {
ORTE_ERROR_LOG(rc);
free(tokens[0]);
free(segment);
free(trig_name);
free(trig_keys[0]);
free(trig_keys[1]);
@ -155,6 +159,9 @@ int orte_rmgr_base_proc_stage_gate_init(orte_jobid_t job)
if (ORTE_SUCCESS != (rc = orte_schema.get_std_trigger_name(&trig_name,
ORTE_NUM_ABORTED_TRIGGER, job))) {
ORTE_ERROR_LOG(rc);
free(tokens[0]);
free(segment);
free(trig_keys[0]);
return rc;
}
trig_level = 1;
@ -165,10 +172,14 @@ int orte_rmgr_base_proc_stage_gate_init(orte_jobid_t job)
segment, tokens, 1, trig_keys, &trig_level,
orte_rmgr_base_proc_stage_gate_mgr_abort, NULL))) {
ORTE_ERROR_LOG(rc);
free(tokens[0]);
free(segment);
free(trig_name);
free(trig_keys[0]);
return rc;
}
free(tokens[0]);
free(segment);
free(trig_name);
free(trig_keys[0]);

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

@ -95,8 +95,10 @@ orte_sds_base_basic_contact_universe(void)
pid = getpid();
if (0 > asprintf(&orte_universe_info.name, "%s-%d", universe, (int)pid)) {
opal_output(0, "orte_init: failed to create unique universe name");
free(universe);
return ret;
}
free(universe);
} else { /* user-specified name - abort */
opal_output(0, "orte_init: could not contact the specified universe name %s",
orte_universe_info.name);

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

@ -3,14 +3,14 @@
* All rights reserved.
* Copyright (c) 2004-2005 The Trustees of the University of Tennessee.
* All rights reserved.
* Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
* Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
* University of Stuttgart. All rights reserved.
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* $COPYRIGHT$
*
*
* Additional copyrights may follow
*
*
* $HEADER$
*/
@ -86,7 +86,7 @@ int orte_init_stage1(bool infrastructure)
if (ORTE_SUCCESS != (ret = orte_proc_info())) {
return ret;
}
/* Ensure the universe_info structure is instantiated and initialized */
if (ORTE_SUCCESS != (ret = orte_univ_info())) {
return ret;
@ -99,9 +99,9 @@ int orte_init_stage1(bool infrastructure)
ORTE_ERROR_LOG(ret);
return ret;
}
/*
* Open the name services to ensure access to local functions
* Open the name services to ensure access to local functions
*/
if (OMPI_SUCCESS != (ret = orte_ns_base_open())) {
return ret;
@ -111,9 +111,9 @@ int orte_init_stage1(bool infrastructure)
if (ORTE_SUCCESS != (ret = orte_errmgr_base_open())) {
return ret;
}
/***** ERROR LOGGING NOW AVAILABLE *****/
/* check for debug flag */
if (0 > (ret = mca_base_param_register_int("orte", "debug", NULL, NULL, 0))) {
ORTE_ERROR_LOG(ret);
@ -125,7 +125,7 @@ int orte_init_stage1(bool infrastructure)
}
/*
* Initialize the event library
* Initialize the event library
*/
if (OMPI_SUCCESS != (ret = opal_event_init())) {
ORTE_ERROR_LOG(ret);
@ -199,7 +199,7 @@ int orte_init_stage1(bool infrastructure)
}
/*
* Name Server
* Name Server
*/
if (OMPI_SUCCESS != (ret = orte_ns_base_select())) {
ORTE_ERROR_LOG(ret);
@ -207,13 +207,13 @@ int orte_init_stage1(bool infrastructure)
}
/*
* Registry
* Registry
*/
if (ORTE_SUCCESS != (ret = orte_gpr_base_select())) {
ORTE_ERROR_LOG(ret);
return ret;
}
/* set contact info for ns/gpr */
if(NULL != orte_process_info.ns_replica_uri) {
orte_rml.set_uri(orte_process_info.ns_replica_uri);
@ -235,7 +235,7 @@ int orte_init_stage1(bool infrastructure)
if (orte_process_info.seed) {
orte_universe_info.seed_uri = orte_rml.get_uri();
}
/* setup my session directory */
if (ORTE_SUCCESS != (ret = orte_ns.get_jobid_string(&jobid_str, orte_process_info.my_name))) {
ORTE_ERROR_LOG(ret);
@ -245,7 +245,7 @@ int orte_init_stage1(bool infrastructure)
ORTE_ERROR_LOG(ret);
return ret;
}
if (orte_debug_flag) {
opal_output(0, "[%lu,%lu,%lu] setting up session dir with",
ORTE_NAME_ARGS(orte_process_info.my_name));
@ -303,8 +303,8 @@ int orte_init_stage1(bool infrastructure)
free(contact_path);
}
/*
* setup the resource manager
/*
* setup the resource manager
*/
if (ORTE_SUCCESS != (ret = orte_rmgr_base_open())) {
@ -316,7 +316,7 @@ int orte_init_stage1(bool infrastructure)
ORTE_ERROR_LOG(ret);
return ret;
}
/*
* setup the state-of-health monitor
*/
@ -329,9 +329,9 @@ int orte_init_stage1(bool infrastructure)
ORTE_ERROR_LOG(ret);
return ret;
}
/* if we are a singleton or the seed, setup the infrastructure for our job */
if(orte_process_info.singleton || orte_process_info.seed) {
char *site, *resource;
@ -339,7 +339,7 @@ int orte_init_stage1(bool infrastructure)
ORTE_ERROR_LOG(ret);
return ret;
}
/* If there is no existing cellid, create one */
my_cellid = 0; /* JJH Assertion/Repair until cellid's are fixed */
ret = orte_ns.get_cell_info(my_cellid, &site, &resource);
@ -350,7 +350,7 @@ int orte_init_stage1(bool infrastructure)
ORTE_ERROR_LOG(ret);
return ret;
}
if(my_cellid != 0) { /* JJH Assertion/Repair until cellid's are fixed */
my_cellid = 0;
}
@ -359,7 +359,7 @@ int orte_init_stage1(bool infrastructure)
ORTE_ERROR_LOG(ret);
return ret;
}
if (ORTE_SUCCESS != (ret = orte_ns.get_cellid(&my_cellid, orte_process_info.my_name))) {
ORTE_ERROR_LOG(ret);
return ret;
@ -372,7 +372,7 @@ int orte_init_stage1(bool infrastructure)
* really know that info for a singleton, we make the assumption
* that the allocation is unity and place a structure on the
* registry for it
*
*
* THIS ONLY SHOULD BE DONE FOR SINGLETONS - DO NOT DO IT
* FOR ANY OTHER CASE
*/
@ -389,11 +389,11 @@ int orte_init_stage1(bool infrastructure)
ORTE_ERROR_LOG(ORTE_ERR_OUT_OF_RESOURCE);
return ORTE_ERR_OUT_OF_RESOURCE;
}
rds_item->site = strdup("Singleton");
rds_item->name = strdup(orte_system_info.nodename);
rds_item->cellid = my_cellid;
/* Set up data structure for RAS item */
ras_item->node_name = strdup(rds_item->name);
ras_item->node_arch = strdup("unknown");
@ -413,7 +413,7 @@ int orte_init_stage1(bool infrastructure)
new_attr->keyval.type = ORTE_STRING;
new_attr->keyval.value.strptr = strdup(ras_item->node_name);
opal_list_append(&(rds_item->attributes), &new_attr->super);
new_attr = OBJ_NEW(orte_rds_cell_attr_t);
if (NULL == new_attr) {
ORTE_ERROR_LOG(ORTE_ERR_OUT_OF_RESOURCE);
@ -423,7 +423,7 @@ int orte_init_stage1(bool infrastructure)
new_attr->keyval.type = ORTE_CELLID;
new_attr->keyval.value.cellid = rds_item->cellid;
opal_list_append(&(rds_item->attributes), &new_attr->super);
opal_list_append(&rds_single_host, &rds_item->super);
/* Store into registry */
@ -438,11 +438,11 @@ int orte_init_stage1(bool infrastructure)
ORTE_ERROR_LOG(ret);
return ret;
}
OBJ_DESTRUCT(&single_host);
OBJ_DESTRUCT(&rds_single_host);
}
/* set the rest of the infrastructure */
if (ORTE_SUCCESS != (ret = orte_rmgr_base_set_job_slots(my_jobid,1))) {
ORTE_ERROR_LOG(ret);
@ -554,7 +554,7 @@ orte_err2str(int errnum)
case ORTE_ERR_TYPE_MISMATCH:
retval = "Type mismatch";
break;
default:
default:
retval = NULL;
}

Разница между файлами не показана из-за своего большого размера Загрузить разницу