1
1

Fix ompi-server: remove extra command flag in buffer being sent to mpirun, ensure that tools route messages thru a remote HNP

This commit was SVN r24491.
Этот коммит содержится в:
Ralph Castain 2011-03-05 17:12:46 +00:00
родитель 292b617559
Коммит 63f38e38bb
2 изменённых файлов: 11 добавлений и 5 удалений

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

@ -60,7 +60,6 @@ static bool server_setup=false;
static void setup_server(void)
{
opal_buffer_t buf;
orte_rml_cmd_flag_t cmd=ORTE_RML_UPDATE_CMD; /* irrelevant - will be ignored */
int rc;
OPAL_OUTPUT_VERBOSE((1, ompi_pubsub_base_output,
@ -84,7 +83,6 @@ static void setup_server(void)
* info into a buffer
*/
OBJ_CONSTRUCT(&buf, opal_buffer_t);
opal_dss.pack(&buf, &cmd, 1, ORTE_RML_CMD);
opal_dss.pack(&buf, &mca_pubsub_orte_component.server_uri, 1, OPAL_STRING);
/* extract the server's name so we have its jobid */
if (ORTE_SUCCESS != (rc = orte_rml_base_parse_uris(mca_pubsub_orte_component.server_uri,

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

@ -321,10 +321,18 @@ static orte_process_name_t get_route(orte_process_name_t *target)
goto found;
}
/* if I am a tool, the route is direct */
/* if I am a tool, the route is direct if target is in
* my own job family, and to the target's HNP if not
*/
if (ORTE_PROC_IS_TOOL) {
if (ORTE_JOB_FAMILY(target->jobid) == ORTE_JOB_FAMILY(ORTE_PROC_MY_NAME->jobid)) {
ret = target;
goto found;
} else {
ORTE_HNP_NAME_FROM_JOB(&daemon, target->jobid);
ret = &daemon;
goto found;
}
}
/****** HNP AND DAEMONS ONLY ******/