Some more cleanup on direct routed when daemons are involved
This commit was SVN r26594.
Этот коммит содержится в:
родитель
cee5a75d19
Коммит
078a4667e4
@ -145,27 +145,19 @@ int orte_odls_base_default_get_add_procs_data(opal_buffer_t *data,
|
|||||||
OBJ_RELEASE(wireup);
|
OBJ_RELEASE(wireup);
|
||||||
return rc;
|
return rc;
|
||||||
}
|
}
|
||||||
/* if anything was inserted, put it in a byte object for xmission */
|
/* put it in a byte object for xmission */
|
||||||
if (0 < wireup->bytes_used) {
|
opal_dss.unload(wireup, (void**)&bo.bytes, &numbytes);
|
||||||
opal_dss.unload(wireup, (void**)&bo.bytes, &numbytes);
|
/* pack the byte object - zero-byte objects are fine */
|
||||||
/* pack the byte object */
|
bo.size = numbytes;
|
||||||
bo.size = numbytes;
|
boptr = &bo;
|
||||||
boptr = &bo;
|
if (ORTE_SUCCESS != (rc = opal_dss.pack(data, &boptr, 1, OPAL_BYTE_OBJECT))) {
|
||||||
if (ORTE_SUCCESS != (rc = opal_dss.pack(data, &boptr, 1, OPAL_BYTE_OBJECT))) {
|
ORTE_ERROR_LOG(rc);
|
||||||
ORTE_ERROR_LOG(rc);
|
OBJ_RELEASE(wireup);
|
||||||
OBJ_RELEASE(wireup);
|
return rc;
|
||||||
return rc;
|
}
|
||||||
}
|
/* release the data since it has now been copied into our buffer */
|
||||||
/* release the data since it has now been copied into our buffer */
|
if (NULL != bo.bytes) {
|
||||||
free(bo.bytes);
|
free(bo.bytes);
|
||||||
} else {
|
|
||||||
/* pack numbytes=0 so the unpack routine remains sync'd to us */
|
|
||||||
numbytes = 0;
|
|
||||||
if (ORTE_SUCCESS != (rc = opal_dss.pack(data, &numbytes, 1, OPAL_INT32))) {
|
|
||||||
ORTE_ERROR_LOG(rc);
|
|
||||||
OBJ_RELEASE(wireup);
|
|
||||||
return rc;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
OBJ_RELEASE(wireup);
|
OBJ_RELEASE(wireup);
|
||||||
} else {
|
} else {
|
||||||
|
@ -384,7 +384,14 @@ static void get_routing_list(orte_grpcomm_coll_t type,
|
|||||||
|
|
||||||
static int get_wireup_info(opal_buffer_t *buf)
|
static int get_wireup_info(opal_buffer_t *buf)
|
||||||
{
|
{
|
||||||
|
opal_byte_object_t bo, *boptr;
|
||||||
|
|
||||||
/* this is a meaningless command for a direct as I am not allowed to route */
|
/* this is a meaningless command for a direct as I am not allowed to route */
|
||||||
|
bo.bytes = NULL;
|
||||||
|
bo.size = 0;
|
||||||
|
boptr = &bo;
|
||||||
|
|
||||||
|
opal_dss.pack(buf, &boptr, 1, OPAL_BYTE_OBJECT);
|
||||||
return ORTE_SUCCESS;
|
return ORTE_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user