Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Multiple commits #1841

Merged
merged 3 commits into from
Nov 16, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -336,6 +336,9 @@ AC_CHECK_SIZEOF(int)
AC_CHECK_SIZEOF(long)
AC_CHECK_SIZEOF(long long)
AC_CHECK_SIZEOF(void *)
AS_IF([test "$ac_cv_sizeof_void_p" -eq 4],
[AC_MSG_WARN([PRRTE does not support 32 bit builds.])
AC_MSG_ERROR([Cannot continue])])
AC_CHECK_SIZEOF(size_t)

#
Expand Down
3 changes: 2 additions & 1 deletion src/mca/ras/base/ras_base_allocate.c
Original file line number Diff line number Diff line change
Expand Up @@ -681,7 +681,8 @@ void prte_ras_base_allocate(int fd, short args, void *cbdata)

DISPLAY:
/* shall we display the results? */
if (4 < pmix_output_get_verbosity(prte_ras_base_framework.framework_output)) {
if (4 < pmix_output_get_verbosity(prte_ras_base_framework.framework_output) ||
prte_get_attribute(&jdata->attributes, PRTE_JOB_DISPLAY_ALLOC, NULL, PMIX_BOOL)) {
prte_ras_base_display_alloc(jdata);
}

Expand Down
10 changes: 9 additions & 1 deletion src/mca/schizo/ompi/schizo_ompi.c
Original file line number Diff line number Diff line change
Expand Up @@ -1801,7 +1801,15 @@ static bool check_prte_overlap(char *var, char *value)
return true;
} else if (0 == strncmp(var, "reachable_", strlen("reachable_"))) {
// need to convert reachable to prtereachable
pmix_asprintf(&tmp, "PRTE_MCA_prtereachable_%s", &var[strlen("reachable")]);
pmix_asprintf(&tmp, "PRTE_MCA_prtereachable_%s", &var[strlen("reachable_")]);
// set it, but don't overwrite if they already
// have a value in our environment
setenv(tmp, value, false);
free(tmp);
return true;
} else if (0 == strncmp(var, "orte_", strlen("orte_"))) {
// need to convert "orte" to "prte"
pmix_asprintf(&tmp, "PRTE_MCA_prte_%s", &var[strlen("orte_")]);
// set it, but don't overwrite if they already
// have a value in our environment
setenv(tmp, value, false);
Expand Down
25 changes: 9 additions & 16 deletions src/runtime/prte_init.c
Original file line number Diff line number Diff line change
Expand Up @@ -167,6 +167,15 @@ int prte_init_minimum(void)
return prte_pmix_convert_status(ret);
}

/* keyval lex-based parser */
/* Setup the parameter system */
if (PRTE_SUCCESS != (ret = pmix_mca_base_var_init())) {
return ret;
}

/* pre-load any default mca param files */
prte_preload_default_mca_params();

return PRTE_SUCCESS;
}

Expand Down Expand Up @@ -195,13 +204,6 @@ int prte_init_util(prte_proc_type_t flags)
/* initialize the output system */
pmix_output_init();

/* keyval lex-based parser */
/* Setup the parameter system */
if (PRTE_SUCCESS != (ret = pmix_mca_base_var_init())) {
error = "mca_base_var_init";
goto error;
}

/* set the nodename so anyone who needs it has it - this
* must come AFTER we initialize the installdirs */
prte_setup_hostname();
Expand All @@ -220,15 +222,6 @@ int prte_init_util(prte_proc_type_t flags)
return PRTE_ERR_SILENT;
}

/* pre-load any default mca param files */
prte_preload_default_mca_params();

/* Register all MCA Params */
if (PRTE_SUCCESS != (ret = prte_register_params())) {
error = "prte_register_params";
goto error;
}

ret = pmix_mca_base_framework_open(&prte_prtebacktrace_base_framework,
PMIX_MCA_BASE_OPEN_DEFAULT);
if (PRTE_SUCCESS != ret) {
Expand Down
30 changes: 30 additions & 0 deletions src/tools/prte/prte.c
Original file line number Diff line number Diff line change
Expand Up @@ -401,6 +401,16 @@ int main(int argc, char *argv[])
* choice of proxy since some environments forward their envars */
unsetenv("PRTE_MCA_schizo_proxy");

/* Register all global MCA Params */
if (PRTE_SUCCESS != (rc = prte_register_params())) {
if (PRTE_ERR_SILENT != rc) {
pmix_show_help("help-prte-runtime", "prte_init:startup:internal-failure", true,
"prte register params",
PRTE_ERROR_NAME(rc), rc);
}
return 1;
}

/* parse the input argv to get values, including everyone's MCA params */
PMIX_CONSTRUCT(&results, pmix_cli_result_t);
rc = schizo->parse_cli(pargv, &results, PMIX_CLI_WARN);
Expand Down Expand Up @@ -740,6 +750,26 @@ int main(int argc, char *argv[])
}
}

/* check a couple of display options for the DVM itself */
opt = pmix_cmd_line_get_param(&results, PRTE_CLI_DISPLAY);
if (NULL != opt) {
char **targv;
for (n=0; NULL != opt->values[n]; n++) {
targv = PMIX_ARGV_SPLIT_COMPAT(opt->values[n], ',');
for (i=0; NULL != targv[i]; i++) {
if (PMIX_CHECK_CLI_OPTION(targv[i], PRTE_CLI_ALLOC)) {
prte_set_attribute(&jdata->attributes, PRTE_JOB_DISPLAY_ALLOC,
PRTE_ATTR_GLOBAL, NULL, PMIX_BOOL);
} else if (PMIX_CHECK_CLI_OPTION(cptr, PRTE_CLI_PARSEABLE) ||
PMIX_CHECK_CLI_OPTION(cptr, PRTE_CLI_PARSABLE)) {
prte_set_attribute(&jdata->attributes, PRTE_JOB_DISPLAY_PARSEABLE_OUTPUT,
PRTE_ATTR_GLOBAL, NULL, PMIX_BOOL);
}
}
PMIX_ARGV_FREE_COMPAT(targv);
}
}

/* setup to listen for commands sent specifically to me, even though I would probably
* be the one sending them! Unfortunately, since I am a participating daemon,
* there are times I need to send a command to "all daemons", and that means *I* have
Expand Down
11 changes: 11 additions & 0 deletions src/tools/prte_info/prte_info.c
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@
#include "src/class/pmix_object.h"
#include "src/class/pmix_pointer_array.h"
#include "src/mca/base/pmix_base.h"
#include "src/mca/errmgr/errmgr.h"
#include "src/mca/prteinstalldirs/prteinstalldirs.h"
#include "src/mca/schizo/base/base.h"
#include "src/prted/pmix/pmix_server.h"
Expand Down Expand Up @@ -136,6 +137,16 @@ int main(int argc, char *argv[])
personality = schizo->name;
}

/* Register all global MCA Params */
if (PRTE_SUCCESS != (ret = prte_register_params())) {
if (PRTE_ERR_SILENT != ret) {
pmix_show_help("help-prte-runtime", "prte_init:startup:internal-failure", true,
"prte register params",
PRTE_ERROR_NAME(ret), ret);
}
return 1;
}

/* parse the input argv to get values, including everyone's MCA params */
PMIX_CONSTRUCT(&prte_info_cmd_line, pmix_cli_result_t);
ret = schizo->parse_cli(argv, &prte_info_cmd_line, PMIX_CLI_SILENT);
Expand Down
10 changes: 10 additions & 0 deletions src/tools/prted/prted.c
Original file line number Diff line number Diff line change
Expand Up @@ -297,6 +297,16 @@ int main(int argc, char *argv[])
return ret;
}

/* Register all global MCA Params */
if (PRTE_SUCCESS != (ret = prte_register_params())) {
if (PRTE_ERR_SILENT != ret) {
pmix_show_help("help-prte-runtime", "prte_init:startup:internal-failure", true,
"prte register params",
PRTE_ERROR_NAME(ret), ret);
}
return 1;
}

/* check if we are running as root - if we are, then only allow
* us to proceed if the allow-run-as-root flag was given. Otherwise,
* exit with a giant warning message
Expand Down
10 changes: 10 additions & 0 deletions src/tools/prun/prun.c
Original file line number Diff line number Diff line change
Expand Up @@ -182,6 +182,16 @@ int prun(int argc, char *argv[])
personality = schizo->name;
}

/* Register all global MCA Params */
if (PRTE_SUCCESS != (rc = prte_register_params())) {
if (PRTE_ERR_SILENT != rc) {
pmix_show_help("help-prte-runtime", "prte_init:startup:internal-failure", true,
"prte register params",
PRTE_ERROR_NAME(rc), rc);
}
return 1;
}

/* parse the input argv to get values, including everyone's MCA params */
PMIX_CONSTRUCT(&results, pmix_cli_result_t);
rc = schizo->parse_cli(pargv, &results, PMIX_CLI_WARN);
Expand Down
10 changes: 10 additions & 0 deletions src/tools/pterm/pterm.c
Original file line number Diff line number Diff line change
Expand Up @@ -295,6 +295,16 @@ int main(int argc, char *argv[])
return 1;
}

/* Register all global MCA Params */
if (PRTE_SUCCESS != (rc = prte_register_params())) {
if (PRTE_ERR_SILENT != rc) {
pmix_show_help("help-prte-runtime", "prte_init:startup:internal-failure", true,
"prte register params",
PRTE_ERROR_NAME(rc), rc);
}
return 1;
}

rc = schizo->parse_cli(argv, &results, PMIX_CLI_WARN);
if (PRTE_SUCCESS != rc) {
PMIX_DESTRUCT(&results);
Expand Down