add an option to enable static ports. diabled by default
This commit was SVN r26462.
Этот коммит содержится в:
родитель
e890a8379b
Коммит
6eeca66475
@ -134,4 +134,19 @@ AC_DEFINE_UNQUOTED([ORTE_ENABLE_PROGRESS_THREADS],
|
||||
[$orte_enable_progress_threads],
|
||||
[Whether we want orte progress threads enabled])
|
||||
|
||||
AC_MSG_CHECKING([if want orte static ports])
|
||||
AC_ARG_ENABLE([orte-static-ports],
|
||||
[AC_HELP_STRING([--enable-orte-static-ports],
|
||||
[Enable orte static ports for tcp oob. (default: disabled)])])
|
||||
if test "$enable_orte_static_ports" = "yes"; then
|
||||
AC_MSG_RESULT([yes])
|
||||
orte_enable_static_ports=1
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
orte_enable_static_ports=0
|
||||
fi
|
||||
AC_DEFINE_UNQUOTED([ORTE_ENABLE_STATIC_PORTS],
|
||||
[$orte_enable_static_ports],
|
||||
[Whether we want static ports enabled])
|
||||
|
||||
])dnl
|
||||
|
@ -303,6 +303,7 @@ int orte_ess_base_orted_setup(char **hosts)
|
||||
error = "orte_util_nidmap_init";
|
||||
goto error;
|
||||
}
|
||||
#if ORTE_ENABLE_STATIC_PORTS
|
||||
/* if we are using static ports, then we need to setup
|
||||
* the daemon info so the RML can function properly
|
||||
* without requiring a wireup stage. This must be done
|
||||
@ -324,6 +325,7 @@ int orte_ess_base_orted_setup(char **hosts)
|
||||
goto error;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
/* be sure to update the routing tree so the initial "phone home"
|
||||
* to mpirun goes through the tree if static ports were enabled - still
|
||||
* need to do it anyway just to initialize things
|
||||
|
@ -293,6 +293,7 @@ static int mca_oob_tcp_component_register(void)
|
||||
mca_oob_tcp_component.tcp_listen_thread_tv.tv_sec = tmp / (1000);
|
||||
mca_oob_tcp_component.tcp_listen_thread_tv.tv_usec = (tmp % 1000) * 1000;
|
||||
|
||||
#if ORTE_ENABLE_STATIC_PORTS
|
||||
mca_base_param_reg_string(&mca_oob_tcp_component.super.oob_base,
|
||||
"static_ports", "Static ports for daemons and procs (IPv4)",
|
||||
false, false,
|
||||
@ -311,6 +312,7 @@ static int mca_oob_tcp_component_register(void)
|
||||
orte_static_ports = false;
|
||||
mca_oob_tcp_component.tcp4_static_ports = NULL;
|
||||
}
|
||||
#endif
|
||||
|
||||
mca_base_param_reg_string(&mca_oob_tcp_component.super.oob_base,
|
||||
"dynamic_ports", "Range of ports to be dynamically used by daemons and procs (IPv4)",
|
||||
@ -340,6 +342,7 @@ static int mca_oob_tcp_component_register(void)
|
||||
0,
|
||||
&mca_oob_tcp_component.disable_family);
|
||||
#if OPAL_WANT_IPV6
|
||||
#if ORTE_ENABLE_STATIC_PORTS
|
||||
mca_base_param_reg_string(&mca_oob_tcp_component.super.oob_base,
|
||||
"static_ports_v6", "Static ports for daemons and procs (IPv6)",
|
||||
false, false,
|
||||
@ -357,6 +360,7 @@ static int mca_oob_tcp_component_register(void)
|
||||
orte_static_ports = false;
|
||||
mca_oob_tcp_component.tcp6_static_ports = NULL;
|
||||
}
|
||||
#endif
|
||||
|
||||
mca_base_param_reg_string(&mca_oob_tcp_component.super.oob_base,
|
||||
"dynamic_ports_v6", "Range of ports to be dynamically used by daemons and procs (IPv4)",
|
||||
@ -1627,7 +1631,8 @@ int mca_oob_tcp_resolve(mca_oob_tcp_peer_t* peer)
|
||||
mca_oob_tcp_peer_resolved(peer, addr);
|
||||
return ORTE_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
#if ORTE_ENABLE_STATIC_PORTS
|
||||
/* if we don't know it, and we are using static ports, try
|
||||
* to compute the address and port
|
||||
*/
|
||||
@ -1730,6 +1735,7 @@ int mca_oob_tcp_resolve(mca_oob_tcp_peer_t* peer)
|
||||
free(uri);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
unlock:
|
||||
return rc;
|
||||
|
@ -205,6 +205,7 @@ int orte_util_setup_local_nidmap_entries(void)
|
||||
return ORTE_SUCCESS;
|
||||
}
|
||||
|
||||
#if ORTE_ENABLE_STATIC_PORTS
|
||||
int orte_util_build_daemon_nidmap(char **nodes)
|
||||
{
|
||||
orte_nid_t *node;
|
||||
@ -292,6 +293,7 @@ int orte_util_build_daemon_nidmap(char **nodes)
|
||||
|
||||
return rc;
|
||||
}
|
||||
#endif
|
||||
|
||||
int orte_util_encode_nodemap(opal_byte_object_t *boptr)
|
||||
{
|
||||
|
@ -58,7 +58,9 @@ ORTE_DECLSPEC int orte_util_encode_pidmap(opal_byte_object_t *boptr);
|
||||
ORTE_DECLSPEC int orte_util_decode_pidmap(opal_byte_object_t *boptr);
|
||||
ORTE_DECLSPEC int orte_util_decode_daemon_pidmap(opal_byte_object_t *bo);
|
||||
|
||||
#if ORTE_ENABLE_STATIC_PORTS
|
||||
ORTE_DECLSPEC int orte_util_build_daemon_nidmap(char **nodes);
|
||||
#endif
|
||||
|
||||
ORTE_DECLSPEC void orte_nidmap_dump(void);
|
||||
ORTE_DECLSPEC void orte_jmap_dump(orte_jmap_t *jmap);
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user