diff --git a/opal/mca/pmix/external/pmix_ext.c b/opal/mca/pmix/external/pmix_ext.c index 6136115ba9..c0c0ab8c3f 100644 --- a/opal/mca/pmix/external/pmix_ext.c +++ b/opal/mca/pmix/external/pmix_ext.c @@ -3,7 +3,7 @@ * Copyright (c) 2014-2015 Intel, Inc. All rights reserved. * Copyright (c) 2014-2015 Research Organization for Information Science * and Technology (RIST). All rights reserved. - * Copyright (c) 2014-2015 Mellanox Technologies, Inc. + * Copyright (c) 2014 Mellanox Technologies, Inc. * All rights reserved. * $COPYRIGHT$ * @@ -44,61 +44,61 @@ /* These are functions used by both client and server to * access common functions in the embedded PMIx library */ -static const char *pmix1_get_nspace(opal_jobid_t jobid); -static void pmix1_register_jobid(opal_jobid_t jobid, const char *nspace); +static const char *pmix_ext_get_nspace(opal_jobid_t jobid); +static void pmix_ext_register_jobid(opal_jobid_t jobid, const char *nspace); const opal_pmix_base_module_t opal_pmix_external_module = { /* client APIs */ - .init = pmix1_client_init, - .finalize = pmix1_client_finalize, - .initialized = pmix1_initialized, - .abort = pmix1_abort, - .commit = pmix1_commit, - .fence = pmix1_fence, - .fence_nb = pmix1_fencenb, - .put = pmix1_put, - .get = pmix1_get, - .get_nb = pmix1_getnb, - .publish = pmix1_publish, - .publish_nb = pmix1_publishnb, - .lookup = pmix1_lookup, - .lookup_nb = pmix1_lookupnb, - .unpublish = pmix1_unpublish, - .unpublish_nb = pmix1_unpublishnb, - .spawn = pmix1_spawn, - .spawn_nb = pmix1_spawnnb, - .connect = pmix1_connect, - .connect_nb = pmix1_connectnb, - .disconnect = pmix1_disconnect, - .disconnect_nb = pmix1_disconnectnb, - .resolve_peers = pmix1_resolve_peers, - .resolve_nodes = pmix1_resolve_nodes, + .init = pmix_ext_client_init, + .finalize = pmix_ext_client_finalize, + .initialized = pmix_ext_initialized, + .abort = pmix_ext_abort, + .commit = pmix_ext_commit, + .fence = pmix_ext_fence, + .fence_nb = pmix_ext_fencenb, + .put = pmix_ext_put, + .get = pmix_ext_get, + .get_nb = pmix_ext_getnb, + .publish = pmix_ext_publish, + .publish_nb = pmix_ext_publishnb, + .lookup = pmix_ext_lookup, + .lookup_nb = pmix_ext_lookupnb, + .unpublish = pmix_ext_unpublish, + .unpublish_nb = pmix_ext_unpublishnb, + .spawn = pmix_ext_spawn, + .spawn_nb = pmix_ext_spawnnb, + .connect = pmix_ext_connect, + .connect_nb = pmix_ext_connectnb, + .disconnect = pmix_ext_disconnect, + .disconnect_nb = pmix_ext_disconnectnb, + .resolve_peers = pmix_ext_resolve_peers, + .resolve_nodes = pmix_ext_resolve_nodes, /* server APIs */ - .server_init = pmix1_server_init, - .server_finalize = pmix1_server_finalize, - .generate_regex = pmix1_server_gen_regex, - .generate_ppn = pmix1_server_gen_ppn, - .server_register_nspace = pmix1_server_register_nspace, - .server_deregister_nspace = pmix1_server_deregister_nspace, - .server_register_client = pmix1_server_register_client, - .server_deregister_client = pmix1_server_deregister_client, - .server_setup_fork = pmix1_server_setup_fork, - .server_dmodex_request = pmix1_server_dmodex, - .server_notify_error = pmix1_server_notify_error, + .server_init = pmix_ext_server_init, + .server_finalize = pmix_ext_server_finalize, + .generate_regex = pmix_ext_server_gen_regex, + .generate_ppn = pmix_ext_server_gen_ppn, + .server_register_nspace = pmix_ext_server_register_nspace, + .server_deregister_nspace = pmix_ext_server_deregister_nspace, + .server_register_client = pmix_ext_server_register_client, + .server_deregister_client = pmix_ext_server_deregister_client, + .server_setup_fork = pmix_ext_server_setup_fork, + .server_dmodex_request = pmix_ext_server_dmodex, + .server_notify_error = pmix_ext_server_notify_error, /* utility APIs */ .get_version = PMIx_Get_version, .register_errhandler = opal_pmix_base_register_handler, .deregister_errhandler = opal_pmix_base_deregister_handler, - .store_local = pmix1_store_local, - .get_nspace = pmix1_get_nspace, - .register_jobid = pmix1_register_jobid + .store_local = pmix_ext_store_local, + .get_nspace = pmix_ext_get_nspace, + .register_jobid = pmix_ext_register_jobid }; -static const char *pmix1_get_nspace(opal_jobid_t jobid) +static const char *pmix_ext_get_nspace(opal_jobid_t jobid) { - opal_pmix1_jobid_trkr_t *jptr; + opal_pmix_ext_jobid_trkr_t *jptr; - OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix1_jobid_trkr_t) { + OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix_ext_jobid_trkr_t) { if (jptr->jobid == jobid) { return jptr->nspace; } @@ -106,23 +106,23 @@ static const char *pmix1_get_nspace(opal_jobid_t jobid) return NULL; } -static void pmix1_register_jobid(opal_jobid_t jobid, const char *nspace) +static void pmix_ext_register_jobid(opal_jobid_t jobid, const char *nspace) { - opal_pmix1_jobid_trkr_t *jptr; + opal_pmix_ext_jobid_trkr_t *jptr; /* if we don't already have it, add this to our jobid tracker */ - OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix1_jobid_trkr_t) { + OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix_ext_jobid_trkr_t) { if (jptr->jobid == jobid) { return; } } - jptr = OBJ_NEW(opal_pmix1_jobid_trkr_t); + jptr = OBJ_NEW(opal_pmix_ext_jobid_trkr_t); (void)strncpy(jptr->nspace, nspace, PMIX_MAX_NSLEN); jptr->jobid = jobid; opal_list_append(&mca_pmix_external_component.jobids, &jptr->super); } -pmix_status_t pmix1_convert_opalrc(int rc) +pmix_status_t pmix_ext_convert_opalrc(int rc) { switch (rc) { case OPAL_ERR_UNPACK_READ_PAST_END_OF_BUFFER: @@ -184,7 +184,7 @@ pmix_status_t pmix1_convert_opalrc(int rc) } } -int pmix1_convert_rc(pmix_status_t rc) +int pmix_ext_convert_rc(pmix_status_t rc) { switch (rc) { case PMIX_ERR_UNPACK_READ_PAST_END_OF_BUFFER: @@ -269,7 +269,7 @@ int pmix1_convert_rc(pmix_status_t rc) } } -void pmix1_value_load(pmix_value_t *v, +void pmix_ext_value_load(pmix_value_t *v, opal_value_t *kv) { switch(kv->type) { @@ -370,7 +370,7 @@ void pmix1_value_load(pmix_value_t *v, } } -int pmix1_value_unload(opal_value_t *kv, +int pmix_ext_value_unload(opal_value_t *kv, const pmix_value_t *v) { int rc=OPAL_SUCCESS; @@ -475,11 +475,11 @@ int pmix1_value_unload(opal_value_t *kv, /**** INSTANTIATE INTERNAL CLASSES ****/ -OBJ_CLASS_INSTANCE(opal_pmix1_jobid_trkr_t, +OBJ_CLASS_INSTANCE(opal_pmix_ext_jobid_trkr_t, opal_list_item_t, NULL, NULL); -static void opcon(pmix1_opcaddy_t *p) +static void opcon(pmix_ext_opcaddy_t *p) { memset(&p->p, 0, sizeof(pmix_proc_t)); p->procs = NULL; @@ -497,7 +497,7 @@ static void opcon(pmix1_opcaddy_t *p) p->spcbfunc = NULL; p->cbdata = NULL; } -static void opdes(pmix1_opcaddy_t *p) +static void opdes(pmix_ext_opcaddy_t *p) { if (NULL != p->procs) { PMIX_PROC_FREE(p->procs, p->nprocs); @@ -512,11 +512,11 @@ static void opdes(pmix1_opcaddy_t *p) PMIX_APP_FREE(p->apps, p->sz); } } -OBJ_CLASS_INSTANCE(pmix1_opcaddy_t, +OBJ_CLASS_INSTANCE(pmix_ext_opcaddy_t, opal_object_t, opcon, opdes); -static void ocadcon(pmix1_opalcaddy_t *p) +static void ocadcon(pmix_ext_opalcaddy_t *p) { OBJ_CONSTRUCT(&p->procs, opal_list_t); OBJ_CONSTRUCT(&p->info, opal_list_t); @@ -530,12 +530,12 @@ static void ocadcon(pmix1_opalcaddy_t *p) p->odmdxfunc = NULL; p->ocbdata = NULL; } -static void ocaddes(pmix1_opalcaddy_t *p) +static void ocaddes(pmix_ext_opalcaddy_t *p) { OPAL_LIST_DESTRUCT(&p->procs); OPAL_LIST_DESTRUCT(&p->info); OPAL_LIST_DESTRUCT(&p->apps); } -OBJ_CLASS_INSTANCE(pmix1_opalcaddy_t, +OBJ_CLASS_INSTANCE(pmix_ext_opalcaddy_t, opal_object_t, ocadcon, ocaddes); diff --git a/opal/mca/pmix/external/pmix_ext.h b/opal/mca/pmix/external/pmix_ext.h index 2d658fb07e..12f08860a5 100644 --- a/opal/mca/pmix/external/pmix_ext.h +++ b/opal/mca/pmix/external/pmix_ext.h @@ -47,8 +47,8 @@ typedef struct { opal_list_item_t super; opal_jobid_t jobid; char nspace[PMIX_MAX_NSLEN + 1]; -} opal_pmix1_jobid_trkr_t; -OBJ_CLASS_DECLARATION(opal_pmix1_jobid_trkr_t); +} opal_pmix_ext_jobid_trkr_t; +OBJ_CLASS_DECLARATION(opal_pmix_ext_jobid_trkr_t); typedef struct { opal_object_t super; @@ -67,8 +67,8 @@ typedef struct { opal_pmix_lookup_cbfunc_t lkcbfunc; opal_pmix_spawn_cbfunc_t spcbfunc; void *cbdata; -} pmix1_opcaddy_t; -OBJ_CLASS_DECLARATION(pmix1_opcaddy_t); +} pmix_ext_opcaddy_t; +OBJ_CLASS_DECLARATION(pmix_ext_opcaddy_t); typedef struct { opal_object_t super; @@ -83,77 +83,77 @@ typedef struct { void *cbdata; opal_pmix_release_cbfunc_t odmdxfunc; void *ocbdata; -} pmix1_opalcaddy_t; -OBJ_CLASS_DECLARATION(pmix1_opalcaddy_t); +} pmix_ext_opalcaddy_t; +OBJ_CLASS_DECLARATION(pmix_ext_opalcaddy_t); /**** CLIENT FUNCTIONS ****/ -OPAL_MODULE_DECLSPEC int pmix1_client_init(void); -OPAL_MODULE_DECLSPEC int pmix1_client_finalize(void); -OPAL_MODULE_DECLSPEC int pmix1_initialized(void); -OPAL_MODULE_DECLSPEC int pmix1_abort(int flag, const char *msg, +OPAL_MODULE_DECLSPEC int pmix_ext_client_init(void); +OPAL_MODULE_DECLSPEC int pmix_ext_client_finalize(void); +OPAL_MODULE_DECLSPEC int pmix_ext_initialized(void); +OPAL_MODULE_DECLSPEC int pmix_ext_abort(int flag, const char *msg, opal_list_t *procs); -OPAL_MODULE_DECLSPEC int pmix1_commit(void); -OPAL_MODULE_DECLSPEC int pmix1_fence(opal_list_t *procs, int collect_data); -OPAL_MODULE_DECLSPEC int pmix1_fencenb(opal_list_t *procs, int collect_data, +OPAL_MODULE_DECLSPEC int pmix_ext_commit(void); +OPAL_MODULE_DECLSPEC int pmix_ext_fence(opal_list_t *procs, int collect_data); +OPAL_MODULE_DECLSPEC int pmix_ext_fencenb(opal_list_t *procs, int collect_data, opal_pmix_op_cbfunc_t cbfunc, void *cbdata); -OPAL_MODULE_DECLSPEC int pmix1_put(opal_pmix_scope_t scope, +OPAL_MODULE_DECLSPEC int pmix_ext_put(opal_pmix_scope_t scope, opal_value_t *val); -OPAL_MODULE_DECLSPEC int pmix1_get(const opal_process_name_t *proc, const char *key, +OPAL_MODULE_DECLSPEC int pmix_ext_get(const opal_process_name_t *proc, const char *key, opal_list_t *info, opal_value_t **val); -OPAL_MODULE_DECLSPEC int pmix1_getnb(const opal_process_name_t *proc, const char *key, +OPAL_MODULE_DECLSPEC int pmix_ext_getnb(const opal_process_name_t *proc, const char *key, opal_list_t *info, opal_pmix_value_cbfunc_t cbfunc, void *cbdata); -OPAL_MODULE_DECLSPEC int pmix1_publish(opal_list_t *info); -OPAL_MODULE_DECLSPEC int pmix1_publishnb(opal_list_t *info, +OPAL_MODULE_DECLSPEC int pmix_ext_publish(opal_list_t *info); +OPAL_MODULE_DECLSPEC int pmix_ext_publishnb(opal_list_t *info, opal_pmix_op_cbfunc_t cbfunc, void *cbdata); -OPAL_MODULE_DECLSPEC int pmix1_lookup(opal_list_t *data, opal_list_t *info); -OPAL_MODULE_DECLSPEC int pmix1_lookupnb(char **keys, opal_list_t *info, +OPAL_MODULE_DECLSPEC int pmix_ext_lookup(opal_list_t *data, opal_list_t *info); +OPAL_MODULE_DECLSPEC int pmix_ext_lookupnb(char **keys, opal_list_t *info, opal_pmix_lookup_cbfunc_t cbfunc, void *cbdata); -OPAL_MODULE_DECLSPEC int pmix1_unpublish(char **keys, opal_list_t *info); -OPAL_MODULE_DECLSPEC int pmix1_unpublishnb(char **keys, opal_list_t *info, +OPAL_MODULE_DECLSPEC int pmix_ext_unpublish(char **keys, opal_list_t *info); +OPAL_MODULE_DECLSPEC int pmix_ext_unpublishnb(char **keys, opal_list_t *info, opal_pmix_op_cbfunc_t cbfunc, void *cbdata); -OPAL_MODULE_DECLSPEC int pmix1_spawn(opal_list_t *job_info, opal_list_t *apps, opal_jobid_t *jobid); -OPAL_MODULE_DECLSPEC int pmix1_spawnnb(opal_list_t *job_info, opal_list_t *apps, +OPAL_MODULE_DECLSPEC int pmix_ext_spawn(opal_list_t *job_info, opal_list_t *apps, opal_jobid_t *jobid); +OPAL_MODULE_DECLSPEC int pmix_ext_spawnnb(opal_list_t *job_info, opal_list_t *apps, opal_pmix_spawn_cbfunc_t cbfunc, void *cbdata); -OPAL_MODULE_DECLSPEC int pmix1_connect(opal_list_t *procs); -OPAL_MODULE_DECLSPEC int pmix1_connectnb(opal_list_t *procs, +OPAL_MODULE_DECLSPEC int pmix_ext_connect(opal_list_t *procs); +OPAL_MODULE_DECLSPEC int pmix_ext_connectnb(opal_list_t *procs, opal_pmix_op_cbfunc_t cbfunc, void *cbdata); -OPAL_MODULE_DECLSPEC int pmix1_disconnect(opal_list_t *procs); -OPAL_MODULE_DECLSPEC int pmix1_disconnectnb(opal_list_t *procs, +OPAL_MODULE_DECLSPEC int pmix_ext_disconnect(opal_list_t *procs); +OPAL_MODULE_DECLSPEC int pmix_ext_disconnectnb(opal_list_t *procs, opal_pmix_op_cbfunc_t cbfunc, void *cbdata); -OPAL_MODULE_DECLSPEC int pmix1_resolve_peers(const char *nodename, opal_jobid_t jobid, +OPAL_MODULE_DECLSPEC int pmix_ext_resolve_peers(const char *nodename, opal_jobid_t jobid, opal_list_t *procs); -OPAL_MODULE_DECLSPEC int pmix1_resolve_nodes(opal_jobid_t jobid, char **nodelist); +OPAL_MODULE_DECLSPEC int pmix_ext_resolve_nodes(opal_jobid_t jobid, char **nodelist); /**** COMMON FUNCTIONS ****/ -OPAL_MODULE_DECLSPEC int pmix1_store_local(const opal_process_name_t *proc, +OPAL_MODULE_DECLSPEC int pmix_ext_store_local(const opal_process_name_t *proc, opal_value_t *val); /**** SERVER SOUTHBOUND FUNCTIONS ****/ -OPAL_MODULE_DECLSPEC int pmix1_server_init(opal_pmix_server_module_t *module, +OPAL_MODULE_DECLSPEC int pmix_ext_server_init(opal_pmix_server_module_t *module, opal_list_t *info); -OPAL_MODULE_DECLSPEC int pmix1_server_finalize(void); -OPAL_MODULE_DECLSPEC int pmix1_server_gen_regex(const char *input, char **regex); -OPAL_MODULE_DECLSPEC int pmix1_server_gen_ppn(const char *input, char **ppn); -OPAL_MODULE_DECLSPEC int pmix1_server_register_nspace(opal_jobid_t jobid, +OPAL_MODULE_DECLSPEC int pmix_ext_server_finalize(void); +OPAL_MODULE_DECLSPEC int pmix_ext_server_gen_regex(const char *input, char **regex); +OPAL_MODULE_DECLSPEC int pmix_ext_server_gen_ppn(const char *input, char **ppn); +OPAL_MODULE_DECLSPEC int pmix_ext_server_register_nspace(opal_jobid_t jobid, int nlocalprocs, opal_list_t *info, opal_pmix_op_cbfunc_t cbfunc, void *cbdata); -OPAL_MODULE_DECLSPEC void pmix1_server_deregister_nspace(opal_jobid_t jobid); -OPAL_MODULE_DECLSPEC int pmix1_server_register_client(const opal_process_name_t *proc, +OPAL_MODULE_DECLSPEC void pmix_ext_server_deregister_nspace(opal_jobid_t jobid); +OPAL_MODULE_DECLSPEC int pmix_ext_server_register_client(const opal_process_name_t *proc, uid_t uid, gid_t gid, void *server_object, opal_pmix_op_cbfunc_t cbfunc, void *cbdata); -OPAL_MODULE_DECLSPEC void pmix1_server_deregister_client(const opal_process_name_t *proc); -OPAL_MODULE_DECLSPEC int pmix1_server_setup_fork(const opal_process_name_t *proc, char ***env); -OPAL_MODULE_DECLSPEC int pmix1_server_dmodex(const opal_process_name_t *proc, +OPAL_MODULE_DECLSPEC void pmix_ext_server_deregister_client(const opal_process_name_t *proc); +OPAL_MODULE_DECLSPEC int pmix_ext_server_setup_fork(const opal_process_name_t *proc, char ***env); +OPAL_MODULE_DECLSPEC int pmix_ext_server_dmodex(const opal_process_name_t *proc, opal_pmix_modex_cbfunc_t cbfunc, void *cbdata); -OPAL_MODULE_DECLSPEC int pmix1_server_notify_error(int status, +OPAL_MODULE_DECLSPEC int pmix_ext_server_notify_error(int status, opal_list_t *procs, opal_list_t *error_procs, opal_list_t *info, @@ -161,11 +161,11 @@ OPAL_MODULE_DECLSPEC int pmix1_server_notify_error(int status, /**** COMPONENT UTILITY FUNCTIONS ****/ -OPAL_MODULE_DECLSPEC pmix_status_t pmix1_convert_opalrc(int rc); -OPAL_MODULE_DECLSPEC int pmix1_convert_rc(pmix_status_t rc); -OPAL_MODULE_DECLSPEC void pmix1_value_load(pmix_value_t *v, +OPAL_MODULE_DECLSPEC pmix_status_t pmix_ext_convert_opalrc(int rc); +OPAL_MODULE_DECLSPEC int pmix_ext_convert_rc(pmix_status_t rc); +OPAL_MODULE_DECLSPEC void pmix_ext_value_load(pmix_value_t *v, opal_value_t *kv); -OPAL_MODULE_DECLSPEC int pmix1_value_unload(opal_value_t *kv, +OPAL_MODULE_DECLSPEC int pmix_ext_value_unload(opal_value_t *kv, const pmix_value_t *v); END_C_DECLS diff --git a/opal/mca/pmix/external/pmix_ext_client.c b/opal/mca/pmix/external/pmix_ext_client.c index fb4fd6fcb7..5a6f341be2 100644 --- a/opal/mca/pmix/external/pmix_ext_client.c +++ b/opal/mca/pmix/external/pmix_ext_client.c @@ -3,7 +3,7 @@ * Copyright (c) 2014-2015 Intel, Inc. All rights reserved. * Copyright (c) 2014-2015 Research Organization for Information Science * and Technology (RIST). All rights reserved. - * Copyright (c) 2014-2015 Mellanox Technologies, Inc. + * Copyright (c) 2014 Mellanox Technologies, Inc. * All rights reserved. * $COPYRIGHT$ * @@ -30,62 +30,55 @@ #include "opal/mca/pmix/base/base.h" #include "pmix_ext.h" #include "pmix.h" -#include "src/buffer_ops/buffer_ops.h" +#include "pmix/src/buffer_ops/buffer_ops.h" static pmix_proc_t my_proc; static char *dbgvalue=NULL; static int errhdler_ref = 0; -static void completion_handler (void * cbdata) { - int * cond = (int *)cbdata; - *cond = 0; +static void release_cbfunc(void *cbdata) +{ + pmix_ext_opalcaddy_t *cd = (pmix_ext_opalcaddy_t*)cbdata; + OBJ_RELEASE(cd); } - -#define PMIX_WAIT_FOR_COMPLETION(a) \ - do { \ - while ((a)) { \ - usleep(10); \ - } \ - } while (0); - static void myerr(pmix_status_t status, pmix_proc_t procs[], size_t nprocs, pmix_info_t info[], size_t ninfo) { int rc; - opal_list_t plist, ilist; opal_namelist_t *nm; opal_value_t *iptr; size_t n; - volatile int cond = 1; + pmix_ext_opalcaddy_t *cd; /* convert the incoming status */ - rc = pmix1_convert_rc(status); + rc = pmix_ext_convert_rc(status); + + /* setup the caddy */ + cd = OBJ_NEW(pmix_ext_opalcaddy_t); /* convert the array of procs */ - OBJ_CONSTRUCT(&plist, opal_list_t); for (n=0; n < nprocs; n++) { nm = OBJ_NEW(opal_namelist_t); - nm->name.jobid = strtoul(procs[n].nspace, NULL, 10); + if (OPAL_SUCCESS != (rc = opal_convert_string_to_jobid(&nm->name.jobid, procs[n].nspace))) { + OPAL_ERROR_LOG(rc); + OBJ_RELEASE(cd); + return; + } nm->name.vpid = procs[n].rank; - opal_list_append(&plist, &nm->super); + opal_list_append(&cd->procs, &nm->super); } /* convert the array of info */ - OBJ_CONSTRUCT(&ilist, opal_list_t); for (n=0; n < ninfo; n++) { iptr = OBJ_NEW(opal_value_t); iptr->key = strdup(info[n].key); - pmix1_value_unload(iptr, &info[n].value); - opal_list_append(&plist, &iptr->super); + pmix_ext_value_unload(iptr, &info[n].value); + opal_list_append(&cd->info, &iptr->super); } /* call the base errhandler */ - opal_pmix_base_errhandler(rc, &plist, &ilist, completion_handler, (void *)&cond); - PMIX_WAIT_FOR_COMPLETION(cond); - - OPAL_LIST_DESTRUCT(&plist); - OPAL_LIST_DESTRUCT(&ilist); + opal_pmix_base_errhandler(rc, &cd->procs, &cd->info, release_cbfunc, cd); } static void errreg_cbfunc (pmix_status_t status, @@ -98,12 +91,12 @@ static void errreg_cbfunc (pmix_status_t status, status, errhandler_ref); } -int pmix1_client_init(void) +int pmix_ext_client_init(void) { opal_process_name_t pname; pmix_status_t rc; int dbg; - opal_pmix1_jobid_trkr_t *job; + opal_pmix_ext_jobid_trkr_t *job; opal_output_verbose(1, opal_pmix_base_framework.framework_output, "PMIx_client init"); @@ -114,7 +107,7 @@ int pmix1_client_init(void) } rc = PMIx_Init(&my_proc); if (PMIX_SUCCESS != rc) { - return pmix1_convert_rc(rc); + return pmix_ext_convert_rc(rc); } /* store our jobid and rank */ @@ -127,10 +120,12 @@ int pmix1_client_init(void) /* we were launched by someone else, so make the * jobid just be the hash of the nspace */ OPAL_HASH_STR(my_proc.nspace, pname.jobid); + /* keep it from being negative */ + pname.jobid &= ~(0x8000); } /* insert this into our list of jobids - it will be the * first, and so we'll check it first */ - job = OBJ_NEW(opal_pmix1_jobid_trkr_t); + job = OBJ_NEW(opal_pmix_ext_jobid_trkr_t); (void)strncpy(job->nspace, my_proc.nspace, PMIX_MAX_NSLEN); job->jobid = pname.jobid; opal_list_append(&mca_pmix_external_component.jobids, &job->super); @@ -144,7 +139,7 @@ int pmix1_client_init(void) } -int pmix1_client_finalize(void) +int pmix_ext_client_finalize(void) { pmix_status_t rc; @@ -156,10 +151,10 @@ int pmix1_client_finalize(void) rc = PMIx_Finalize(); - return pmix1_convert_rc(rc); + return pmix_ext_convert_rc(rc); } -int pmix1_initialized(void) +int pmix_ext_initialized(void) { pmix_status_t rc; @@ -167,17 +162,17 @@ int pmix1_initialized(void) "PMIx_client initialized"); rc = PMIx_Initialized(); - return pmix1_convert_rc(rc); + return pmix_ext_convert_rc(rc); } -int pmix1_abort(int flag, const char *msg, +int pmix_ext_abort(int flag, const char *msg, opal_list_t *procs) { pmix_status_t rc; pmix_proc_t *parray=NULL; size_t n, cnt=0; opal_namelist_t *ptr; - opal_pmix1_jobid_trkr_t *job, *jptr; + opal_pmix_ext_jobid_trkr_t *job, *jptr; opal_output_verbose(1, opal_pmix_base_framework.framework_output, "PMIx_client abort"); @@ -191,7 +186,7 @@ int pmix1_abort(int flag, const char *msg, /* look thru our list of jobids and find the * corresponding nspace */ job = NULL; - OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix1_jobid_trkr_t) { + OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix_ext_jobid_trkr_t) { if (jptr->jobid == ptr->name.jobid) { job = jptr; break; @@ -212,21 +207,21 @@ int pmix1_abort(int flag, const char *msg, /* release the array */ PMIX_PROC_FREE(parray, cnt); - return pmix1_convert_rc(rc); + return pmix_ext_convert_rc(rc); } -int pmix1_store_local(const opal_process_name_t *proc, opal_value_t *val) +int pmix_ext_store_local(const opal_process_name_t *proc, opal_value_t *val) { pmix_value_t kv; pmix_status_t rc; pmix_proc_t p; - opal_pmix1_jobid_trkr_t *job, *jptr; + opal_pmix_ext_jobid_trkr_t *job, *jptr; if (NULL != proc) { /* look thru our list of jobids and find the * corresponding nspace */ job = NULL; - OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix1_jobid_trkr_t) { + OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix_ext_jobid_trkr_t) { if (jptr->jobid == proc->jobid) { job = jptr; break; @@ -245,40 +240,40 @@ int pmix1_store_local(const opal_process_name_t *proc, opal_value_t *val) } PMIX_VALUE_CONSTRUCT(&kv); - pmix1_value_load(&kv, val); + pmix_ext_value_load(&kv, val); rc = PMIx_Store_internal(&p, val->key, &kv); PMIX_VALUE_DESTRUCT(&kv); - return pmix1_convert_rc(rc); + return pmix_ext_convert_rc(rc); } -int pmix1_commit(void) +int pmix_ext_commit(void) { pmix_status_t rc; rc = PMIx_Commit(); - return pmix1_convert_rc(rc); + return pmix_ext_convert_rc(rc); } static void opcbfunc(pmix_status_t status, void *cbdata) { - pmix1_opcaddy_t *op = (pmix1_opcaddy_t*)cbdata; + pmix_ext_opcaddy_t *op = (pmix_ext_opcaddy_t*)cbdata; if (NULL != op->opcbfunc) { - op->opcbfunc(pmix1_convert_rc(status), op->cbdata); + op->opcbfunc(pmix_ext_convert_rc(status), op->cbdata); } OBJ_RELEASE(op); } -int pmix1_fence(opal_list_t *procs, int collect_data) +int pmix_ext_fence(opal_list_t *procs, int collect_data) { pmix_status_t rc; pmix_proc_t *parray=NULL; size_t n, cnt=0; opal_namelist_t *ptr; pmix_info_t info, *iptr; - opal_pmix1_jobid_trkr_t *job, *jptr; + opal_pmix_ext_jobid_trkr_t *job, *jptr; opal_output_verbose(1, opal_pmix_base_framework.framework_output, "PMIx_client fence"); @@ -292,7 +287,7 @@ int pmix1_fence(opal_list_t *procs, int collect_data) /* look thru our list of jobids and find the * corresponding nspace */ job = NULL; - OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix1_jobid_trkr_t) { + OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix_ext_jobid_trkr_t) { if (jptr->jobid == ptr->name.jobid) { job = jptr; break; @@ -327,20 +322,20 @@ int pmix1_fence(opal_list_t *procs, int collect_data) PMIX_INFO_DESTRUCT(&info); } - return pmix1_convert_rc(rc); + return pmix_ext_convert_rc(rc); } -int pmix1_fencenb(opal_list_t *procs, int collect_data, +int pmix_ext_fencenb(opal_list_t *procs, int collect_data, opal_pmix_op_cbfunc_t cbfunc, void *cbdata) { pmix_status_t rc; pmix_proc_t *parray=NULL; size_t n, cnt=0; opal_namelist_t *ptr; - pmix1_opcaddy_t *op; + pmix_ext_opcaddy_t *op; pmix_info_t info, *iptr; - opal_pmix1_jobid_trkr_t *job, *jptr; + opal_pmix_ext_jobid_trkr_t *job, *jptr; opal_output_verbose(1, opal_pmix_base_framework.framework_output, "PMIx_client fence_nb"); @@ -354,7 +349,7 @@ int pmix1_fencenb(opal_list_t *procs, int collect_data, /* look thru our list of jobids and find the * corresponding nspace */ job = NULL; - OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix1_jobid_trkr_t) { + OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix_ext_jobid_trkr_t) { if (jptr->jobid == ptr->name.jobid) { job = jptr; break; @@ -380,7 +375,7 @@ int pmix1_fencenb(opal_list_t *procs, int collect_data, } /* create the caddy */ - op = OBJ_NEW(pmix1_opcaddy_t); + op = OBJ_NEW(pmix_ext_opcaddy_t); op->opcbfunc = cbfunc; op->cbdata = cbdata; op->procs = parray; @@ -392,11 +387,11 @@ int pmix1_fencenb(opal_list_t *procs, int collect_data, OBJ_RELEASE(op); } - return pmix1_convert_rc(rc); + return pmix_ext_convert_rc(rc); } -int pmix1_put(opal_pmix_scope_t scope, +int pmix_ext_put(opal_pmix_scope_t scope, opal_value_t *val) { pmix_value_t kv; @@ -406,14 +401,14 @@ int pmix1_put(opal_pmix_scope_t scope, "PMIx_client put"); PMIX_VALUE_CONSTRUCT(&kv); - pmix1_value_load(&kv, val); + pmix_ext_value_load(&kv, val); rc = PMIx_Put(scope, val->key, &kv); PMIX_VALUE_DESTRUCT(&kv); - return pmix1_convert_rc(rc); + return pmix_ext_convert_rc(rc); } -int pmix1_get(const opal_process_name_t *proc, const char *key, +int pmix_ext_get(const opal_process_name_t *proc, const char *key, opal_list_t *info, opal_value_t **val) { int ret; @@ -423,7 +418,7 @@ int pmix1_get(const opal_process_name_t *proc, const char *key, size_t ninfo, n; pmix_info_t *pinfo; opal_value_t *ival; - opal_pmix1_jobid_trkr_t *job, *jptr; + opal_pmix_ext_jobid_trkr_t *job, *jptr; opal_output_verbose(1, opal_pmix_base_framework.framework_output, "%s PMIx_client get on proc %s key %s", @@ -436,7 +431,7 @@ int pmix1_get(const opal_process_name_t *proc, const char *key, /* look thru our list of jobids and find the * corresponding nspace */ job = NULL; - OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix1_jobid_trkr_t) { + OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix_ext_jobid_trkr_t) { if (jptr->jobid == proc->jobid) { job = jptr; break; @@ -471,7 +466,7 @@ int pmix1_get(const opal_process_name_t *proc, const char *key, n=0; OPAL_LIST_FOREACH(ival, info, opal_value_t) { (void)strncpy(pinfo[n].key, ival->key, PMIX_MAX_KEYLEN); - pmix1_value_load(&pinfo[n].value, ival); + pmix_ext_value_load(&pinfo[n].value, ival); } } else { pinfo = NULL; @@ -488,11 +483,11 @@ int pmix1_get(const opal_process_name_t *proc, const char *key, ret = OPAL_SUCCESS; } else { *val = OBJ_NEW(opal_value_t); - ret = pmix1_value_unload(*val, kv); + ret = pmix_ext_value_unload(*val, kv); PMIX_VALUE_FREE(kv, 1); } } else { - ret = pmix1_convert_rc(rc); + ret = pmix_ext_convert_rc(rc); } PMIX_INFO_FREE(pinfo, ninfo); return ret; @@ -501,13 +496,13 @@ int pmix1_get(const opal_process_name_t *proc, const char *key, static void val_cbfunc(pmix_status_t status, pmix_value_t *kv, void *cbdata) { - pmix1_opcaddy_t *op = (pmix1_opcaddy_t*)cbdata; + pmix_ext_opcaddy_t *op = (pmix_ext_opcaddy_t*)cbdata; int rc; opal_value_t val, *v=NULL; - rc = pmix1_convert_opalrc(status); + rc = pmix_ext_convert_opalrc(status); if (PMIX_SUCCESS == status && NULL != kv) { - rc = pmix1_value_unload(&val, kv); + rc = pmix_ext_value_unload(&val, kv); v = &val; } @@ -517,15 +512,15 @@ static void val_cbfunc(pmix_status_t status, OBJ_RELEASE(op); } -int pmix1_getnb(const opal_process_name_t *proc, const char *key, +int pmix_ext_getnb(const opal_process_name_t *proc, const char *key, opal_list_t *info, opal_pmix_value_cbfunc_t cbfunc, void *cbdata) { - pmix1_opcaddy_t *op; + pmix_ext_opcaddy_t *op; pmix_status_t rc; size_t n; opal_value_t *ival; - opal_pmix1_jobid_trkr_t *job, *jptr; + opal_pmix_ext_jobid_trkr_t *job, *jptr; opal_output_verbose(1, opal_pmix_base_framework.framework_output, "%s PMIx_client get_nb on proc %s key %s", @@ -533,7 +528,7 @@ int pmix1_getnb(const opal_process_name_t *proc, const char *key, (NULL == proc) ? "NULL" : OPAL_NAME_PRINT(*proc), key); /* create the caddy */ - op = OBJ_NEW(pmix1_opcaddy_t); + op = OBJ_NEW(pmix_ext_opcaddy_t); op->valcbfunc = cbfunc; op->cbdata = cbdata; @@ -541,7 +536,7 @@ int pmix1_getnb(const opal_process_name_t *proc, const char *key, /* look thru our list of jobids and find the * corresponding nspace */ job = NULL; - OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix1_jobid_trkr_t) { + OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix_ext_jobid_trkr_t) { if (jptr->jobid == proc->jobid) { job = jptr; break; @@ -564,7 +559,7 @@ int pmix1_getnb(const opal_process_name_t *proc, const char *key, n=0; OPAL_LIST_FOREACH(ival, info, opal_value_t) { (void)strncpy(op->info[n].key, ival->key, PMIX_MAX_KEYLEN); - pmix1_value_load(&op->info[n].value, ival); + pmix_ext_value_load(&op->info[n].value, ival); } } } @@ -575,10 +570,10 @@ int pmix1_getnb(const opal_process_name_t *proc, const char *key, OBJ_RELEASE(op); } - return pmix1_convert_rc(rc); + return pmix_ext_convert_rc(rc); } -int pmix1_publish(opal_list_t *info) +int pmix_ext_publish(opal_list_t *info) { pmix_info_t *pinfo; pmix_status_t ret; @@ -598,7 +593,7 @@ int pmix1_publish(opal_list_t *info) n=0; OPAL_LIST_FOREACH(iptr, info, opal_value_t) { (void)strncpy(pinfo[n].key, iptr->key, PMIX_MAX_KEYLEN); - pmix1_value_load(&pinfo[n].value, iptr); + pmix_ext_value_load(&pinfo[n].value, iptr); ++n; } } else { @@ -607,16 +602,16 @@ int pmix1_publish(opal_list_t *info) ret = PMIx_Publish(pinfo, sz); - return pmix1_convert_rc(ret); + return pmix_ext_convert_rc(ret); } -int pmix1_publishnb(opal_list_t *info, +int pmix_ext_publishnb(opal_list_t *info, opal_pmix_op_cbfunc_t cbfunc, void *cbdata) { pmix_status_t ret; opal_value_t *iptr; size_t n; - pmix1_opcaddy_t *op; + pmix_ext_opcaddy_t *op; opal_output_verbose(1, opal_pmix_base_framework.framework_output, "PMIx_client publish_nb"); @@ -626,7 +621,7 @@ int pmix1_publishnb(opal_list_t *info, } /* create the caddy */ - op = OBJ_NEW(pmix1_opcaddy_t); + op = OBJ_NEW(pmix_ext_opcaddy_t); op->opcbfunc = cbfunc; op->cbdata = cbdata; @@ -636,17 +631,17 @@ int pmix1_publishnb(opal_list_t *info, n=0; OPAL_LIST_FOREACH(iptr, info, opal_value_t) { (void)strncpy(op->info[n].key, iptr->key, PMIX_MAX_KEYLEN); - pmix1_value_load(&op->info[n].value, iptr); + pmix_ext_value_load(&op->info[n].value, iptr); ++n; } } ret = PMIx_Publish_nb(op->info, op->sz, opcbfunc, op); - return pmix1_convert_rc(ret); + return pmix_ext_convert_rc(ret); } -int pmix1_lookup(opal_list_t *data, opal_list_t *info) +int pmix_ext_lookup(opal_list_t *data, opal_list_t *info) { pmix_pdata_t *pdata; pmix_info_t *pinfo; @@ -655,7 +650,7 @@ int pmix1_lookup(opal_list_t *data, opal_list_t *info) pmix_status_t ret; opal_pmix_pdata_t *d; opal_value_t *iptr; - opal_pmix1_jobid_trkr_t *job, *jptr; + opal_pmix_ext_jobid_trkr_t *job, *jptr; opal_output_verbose(1, opal_pmix_base_framework.framework_output, "PMIx_client lookup"); @@ -677,7 +672,7 @@ int pmix1_lookup(opal_list_t *data, opal_list_t *info) n=0; OPAL_LIST_FOREACH(iptr, info, opal_value_t) { (void)strncpy(pinfo[n++].key, iptr->key, PMIX_MAX_KEYLEN); - pmix1_value_load(&pinfo[n].value, iptr); + pmix_ext_value_load(&pinfo[n].value, iptr); ++n; } } else { @@ -703,14 +698,14 @@ int pmix1_lookup(opal_list_t *data, opal_list_t *info) } /* if we don't already have it, add this to our jobid tracker */ job = NULL; - OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix1_jobid_trkr_t) { + OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix_ext_jobid_trkr_t) { if (jptr->jobid == d->proc.jobid) { job = jptr; break; } } if (NULL == job) { - job = OBJ_NEW(opal_pmix1_jobid_trkr_t); + job = OBJ_NEW(opal_pmix_ext_jobid_trkr_t); (void)strncpy(job->nspace, pdata[n].proc.nspace, PMIX_MAX_NSLEN); job->jobid = d->proc.jobid; opal_list_append(&mca_pmix_external_component.jobids, &job->super); @@ -720,7 +715,7 @@ int pmix1_lookup(opal_list_t *data, opal_list_t *info) } else { d->proc.vpid = pdata[n].proc.rank; } - rc = pmix1_value_unload(&d->value, &pdata[n].value); + rc = pmix_ext_value_unload(&d->value, &pdata[n].value); if (OPAL_SUCCESS != rc) { OPAL_ERROR_LOG(rc); PMIX_PDATA_FREE(pdata, sz); @@ -730,26 +725,26 @@ int pmix1_lookup(opal_list_t *data, opal_list_t *info) } } - return pmix1_convert_rc(ret); + return pmix_ext_convert_rc(ret); } static void lk_cbfunc(pmix_status_t status, pmix_pdata_t data[], size_t ndata, void *cbdata) { - pmix1_opcaddy_t *op = (pmix1_opcaddy_t*)cbdata; + pmix_ext_opcaddy_t *op = (pmix_ext_opcaddy_t*)cbdata; opal_pmix_pdata_t *d; opal_list_t results, *r = NULL; int rc; size_t n; - opal_pmix1_jobid_trkr_t *job, *jptr; + opal_pmix_ext_jobid_trkr_t *job, *jptr; if (NULL == op->lkcbfunc) { OBJ_RELEASE(op); return; } - rc = pmix1_convert_rc(status); + rc = pmix_ext_convert_rc(status); if (OPAL_SUCCESS == rc) { OBJ_CONSTRUCT(&results, opal_list_t); for (n=0; n < ndata; n++) { @@ -766,14 +761,14 @@ static void lk_cbfunc(pmix_status_t status, } /* if we don't already have it, add this to our jobid tracker */ job = NULL; - OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix1_jobid_trkr_t) { + OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix_ext_jobid_trkr_t) { if (jptr->jobid == d->proc.jobid) { job = jptr; break; } } if (NULL == job) { - job = OBJ_NEW(opal_pmix1_jobid_trkr_t); + job = OBJ_NEW(opal_pmix_ext_jobid_trkr_t); (void)strncpy(job->nspace, data[n].proc.nspace, PMIX_MAX_NSLEN); job->jobid = d->proc.jobid; opal_list_append(&mca_pmix_external_component.jobids, &job->super); @@ -784,7 +779,7 @@ static void lk_cbfunc(pmix_status_t status, d->proc.vpid = data[n].proc.rank; } d->value.key = strdup(data[n].key); - rc = pmix1_value_unload(&d->value, &data[n].value); + rc = pmix_ext_value_unload(&d->value, &data[n].value); if (OPAL_SUCCESS != rc) { rc = OPAL_ERR_BAD_PARAM; OPAL_ERROR_LOG(rc); @@ -803,11 +798,11 @@ static void lk_cbfunc(pmix_status_t status, OBJ_RELEASE(op); } -int pmix1_lookupnb(char **keys, opal_list_t *info, +int pmix_ext_lookupnb(char **keys, opal_list_t *info, opal_pmix_lookup_cbfunc_t cbfunc, void *cbdata) { pmix_status_t ret; - pmix1_opcaddy_t *op; + pmix_ext_opcaddy_t *op; opal_value_t *iptr; size_t n; @@ -816,7 +811,7 @@ int pmix1_lookupnb(char **keys, opal_list_t *info, "PMIx_client lookup_nb"); /* create the caddy */ - op = OBJ_NEW(pmix1_opcaddy_t); + op = OBJ_NEW(pmix_ext_opcaddy_t); op->lkcbfunc = cbfunc; op->cbdata = cbdata; @@ -827,7 +822,7 @@ int pmix1_lookupnb(char **keys, opal_list_t *info, n=0; OPAL_LIST_FOREACH(iptr, info, opal_value_t) { (void)strncpy(op->info[n].key, iptr->key, PMIX_MAX_KEYLEN); - pmix1_value_load(&op->info[n].value, iptr); + pmix_ext_value_load(&op->info[n].value, iptr); ++n; } } @@ -835,10 +830,10 @@ int pmix1_lookupnb(char **keys, opal_list_t *info, ret = PMIx_Lookup_nb(keys, op->info, op->sz, lk_cbfunc, op); - return pmix1_convert_rc(ret); + return pmix_ext_convert_rc(ret); } -int pmix1_unpublish(char **keys, opal_list_t *info) +int pmix_ext_unpublish(char **keys, opal_list_t *info) { pmix_status_t ret; size_t ninfo, n; @@ -851,7 +846,7 @@ int pmix1_unpublish(char **keys, opal_list_t *info) n=0; OPAL_LIST_FOREACH(iptr, info, opal_value_t) { (void)strncpy(pinfo[n++].key, iptr->key, PMIX_MAX_KEYLEN); - pmix1_value_load(&pinfo[n].value, iptr); + pmix_ext_value_load(&pinfo[n].value, iptr); ++n; } } else { @@ -862,19 +857,19 @@ int pmix1_unpublish(char **keys, opal_list_t *info) ret = PMIx_Unpublish(keys, pinfo, ninfo); PMIX_INFO_FREE(pinfo, ninfo); - return pmix1_convert_rc(ret); + return pmix_ext_convert_rc(ret); } -int pmix1_unpublishnb(char **keys, opal_list_t *info, +int pmix_ext_unpublishnb(char **keys, opal_list_t *info, opal_pmix_op_cbfunc_t cbfunc, void *cbdata) { pmix_status_t ret; - pmix1_opcaddy_t *op; + pmix_ext_opcaddy_t *op; opal_value_t *iptr; size_t n; /* create the caddy */ - op = OBJ_NEW(pmix1_opcaddy_t); + op = OBJ_NEW(pmix_ext_opcaddy_t); op->opcbfunc = cbfunc; op->cbdata = cbdata; @@ -885,7 +880,7 @@ int pmix1_unpublishnb(char **keys, opal_list_t *info, n=0; OPAL_LIST_FOREACH(iptr, info, opal_value_t) { (void)strncpy(op->info[n].key, iptr->key, PMIX_MAX_KEYLEN); - pmix1_value_load(&op->info[n].value, iptr); + pmix_ext_value_load(&op->info[n].value, iptr); ++n; } } @@ -893,10 +888,10 @@ int pmix1_unpublishnb(char **keys, opal_list_t *info, ret = PMIx_Unpublish_nb(keys, op->info, op->sz, opcbfunc, op); - return pmix1_convert_rc(ret); + return pmix_ext_convert_rc(ret); } -int pmix1_spawn(opal_list_t *job_info, opal_list_t *apps, opal_jobid_t *jobid) +int pmix_ext_spawn(opal_list_t *job_info, opal_list_t *apps, opal_jobid_t *jobid) { pmix_status_t ret; pmix_info_t *pinfo = NULL; @@ -905,14 +900,14 @@ int pmix1_spawn(opal_list_t *job_info, opal_list_t *apps, opal_jobid_t *jobid) char nspace[PMIX_MAX_NSLEN+1]; opal_value_t *info; opal_pmix_app_t *app; - opal_pmix1_jobid_trkr_t *job; + opal_pmix_ext_jobid_trkr_t *job; if (NULL != job_info && 0 < (ninfo = opal_list_get_size(job_info))) { PMIX_INFO_CREATE(pinfo, ninfo); n=0; OPAL_LIST_FOREACH(info, job_info, opal_value_t) { (void)strncpy(pinfo[n].key, info->key, PMIX_MAX_KEYLEN); - pmix1_value_load(&pinfo[n].value, info); + pmix_ext_value_load(&pinfo[n].value, info); ++n; } } @@ -931,7 +926,7 @@ int pmix1_spawn(opal_list_t *job_info, opal_list_t *apps, opal_jobid_t *jobid) m=0; OPAL_LIST_FOREACH(info, &app->info, opal_value_t) { (void)strncpy(papps[n].info[m].key, info->key, PMIX_MAX_KEYLEN); - pmix1_value_load(&papps[n].info[m].value, info); + pmix_ext_value_load(&papps[n].info[m].value, info); ++m; } } @@ -950,25 +945,25 @@ int pmix1_spawn(opal_list_t *job_info, opal_list_t *apps, opal_jobid_t *jobid) OPAL_HASH_STR(nspace, *jobid); } /* add this to our jobid tracker */ - job = OBJ_NEW(opal_pmix1_jobid_trkr_t); + job = OBJ_NEW(opal_pmix_ext_jobid_trkr_t); (void)strncpy(job->nspace, nspace, PMIX_MAX_NSLEN); job->jobid = *jobid; opal_list_append(&mca_pmix_external_component.jobids, &job->super); } PMIX_APP_FREE(papps, napps); - return pmix1_convert_rc(ret); + return pmix_ext_convert_rc(ret); } static void spcbfunc(pmix_status_t status, char *nspace, void *cbdata) { - pmix1_opcaddy_t *op = (pmix1_opcaddy_t*)cbdata; + pmix_ext_opcaddy_t *op = (pmix_ext_opcaddy_t*)cbdata; int rc; opal_jobid_t jobid=OPAL_JOBID_INVALID; - opal_pmix1_jobid_trkr_t *job; + opal_pmix_ext_jobid_trkr_t *job; - rc = pmix1_convert_rc(status); + rc = pmix_ext_convert_rc(status); if (PMIX_SUCCESS == status) { if (mca_pmix_external_component.native_launch) { /* if we were launched by the OMPI RTE, then @@ -980,7 +975,7 @@ static void spcbfunc(pmix_status_t status, OPAL_HASH_STR(nspace, jobid); } /* add this to our jobid tracker */ - job = OBJ_NEW(opal_pmix1_jobid_trkr_t); + job = OBJ_NEW(opal_pmix_ext_jobid_trkr_t); (void)strncpy(job->nspace, nspace, PMIX_MAX_NSLEN); job->jobid = jobid; opal_list_append(&mca_pmix_external_component.jobids, &job->super); @@ -990,17 +985,17 @@ static void spcbfunc(pmix_status_t status, OBJ_RELEASE(op); } -int pmix1_spawnnb(opal_list_t *job_info, opal_list_t *apps, +int pmix_ext_spawnnb(opal_list_t *job_info, opal_list_t *apps, opal_pmix_spawn_cbfunc_t cbfunc, void *cbdata) { pmix_status_t ret; - pmix1_opcaddy_t *op; + pmix_ext_opcaddy_t *op; size_t n, m; opal_value_t *info; opal_pmix_app_t *app; /* create the caddy */ - op = OBJ_NEW(pmix1_opcaddy_t); + op = OBJ_NEW(pmix_ext_opcaddy_t); op->spcbfunc = cbfunc; op->cbdata = cbdata; @@ -1009,7 +1004,7 @@ int pmix1_spawnnb(opal_list_t *job_info, opal_list_t *apps, n=0; OPAL_LIST_FOREACH(info, job_info, opal_value_t) { (void)strncpy(op->info[n].key, info->key, PMIX_MAX_KEYLEN); - pmix1_value_load(&op->info[n].value, info); + pmix_ext_value_load(&op->info[n].value, info); ++n; } } @@ -1028,7 +1023,7 @@ int pmix1_spawnnb(opal_list_t *job_info, opal_list_t *apps, m=0; OPAL_LIST_FOREACH(info, &app->info, opal_value_t) { (void)strncpy(op->apps[n].info[m].key, info->key, PMIX_MAX_KEYLEN); - pmix1_value_load(&op->apps[n].info[m].value, info); + pmix_ext_value_load(&op->apps[n].info[m].value, info); ++m; } } @@ -1037,16 +1032,16 @@ int pmix1_spawnnb(opal_list_t *job_info, opal_list_t *apps, ret = PMIx_Spawn_nb(op->info, op->ninfo, op->apps, op->sz, spcbfunc, op); - return pmix1_convert_rc(ret); + return pmix_ext_convert_rc(ret); } -int pmix1_connect(opal_list_t *procs) +int pmix_ext_connect(opal_list_t *procs) { pmix_status_t ret; pmix_proc_t *parray=NULL; size_t n, cnt=0; opal_namelist_t *ptr; - opal_pmix1_jobid_trkr_t *job, *jptr; + opal_pmix_ext_jobid_trkr_t *job, *jptr; /* protect against bozo error */ if (NULL == procs || 0 == (cnt = opal_list_get_size(procs))) { @@ -1061,7 +1056,7 @@ int pmix1_connect(opal_list_t *procs) /* look thru our list of jobids and find the * corresponding nspace */ job = NULL; - OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix1_jobid_trkr_t) { + OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix_ext_jobid_trkr_t) { if (jptr->jobid == ptr->name.jobid) { job = jptr; break; @@ -1083,18 +1078,18 @@ int pmix1_connect(opal_list_t *procs) ret = PMIx_Connect(parray, cnt, NULL, 0); PMIX_PROC_FREE(parray, cnt); - return pmix1_convert_rc(ret); + return pmix_ext_convert_rc(ret); } -int pmix1_connectnb(opal_list_t *procs, +int pmix_ext_connectnb(opal_list_t *procs, opal_pmix_op_cbfunc_t cbfunc, void *cbdata) { pmix_status_t ret; size_t n, cnt=0; opal_namelist_t *ptr; - pmix1_opcaddy_t *op; - opal_pmix1_jobid_trkr_t *job; + pmix_ext_opcaddy_t *op; + opal_pmix_ext_jobid_trkr_t *job; /* protect against bozo error */ if (NULL == procs || 0 == (cnt = opal_list_get_size(procs))) { @@ -1102,7 +1097,7 @@ int pmix1_connectnb(opal_list_t *procs, } /* create the caddy */ - op = OBJ_NEW(pmix1_opcaddy_t); + op = OBJ_NEW(pmix_ext_opcaddy_t); op->opcbfunc = cbfunc; op->cbdata = cbdata; op->nprocs = cnt; @@ -1114,7 +1109,7 @@ int pmix1_connectnb(opal_list_t *procs, OPAL_LIST_FOREACH(ptr, procs, opal_namelist_t) { /* look thru our list of jobids and find the * corresponding nspace */ - OPAL_LIST_FOREACH(job, &mca_pmix_external_component.jobids, opal_pmix1_jobid_trkr_t) { + OPAL_LIST_FOREACH(job, &mca_pmix_external_component.jobids, opal_pmix_ext_jobid_trkr_t) { if (job->jobid == ptr->name.jobid) { (void)strncpy(op->procs[n].nspace, job->nspace, PMIX_MAX_NSLEN); break; @@ -1130,16 +1125,16 @@ int pmix1_connectnb(opal_list_t *procs, ret = PMIx_Connect_nb(op->procs, op->nprocs, NULL, 0, opcbfunc, op); - return pmix1_convert_rc(ret); + return pmix_ext_convert_rc(ret); } -int pmix1_disconnect(opal_list_t *procs) +int pmix_ext_disconnect(opal_list_t *procs) { pmix_status_t ret; pmix_proc_t *parray=NULL; size_t n, cnt=0; opal_namelist_t *ptr; - opal_pmix1_jobid_trkr_t *job; + opal_pmix_ext_jobid_trkr_t *job; /* protect against bozo error */ if (NULL == procs || 0 == (cnt = opal_list_get_size(procs))) { @@ -1153,7 +1148,7 @@ int pmix1_disconnect(opal_list_t *procs) OPAL_LIST_FOREACH(ptr, procs, opal_namelist_t) { /* look thru our list of jobids and find the * corresponding nspace */ - OPAL_LIST_FOREACH(job, &mca_pmix_external_component.jobids, opal_pmix1_jobid_trkr_t) { + OPAL_LIST_FOREACH(job, &mca_pmix_external_component.jobids, opal_pmix_ext_jobid_trkr_t) { if (job->jobid == ptr->name.jobid) { (void)strncpy(parray[n].nspace, job->nspace, PMIX_MAX_NSLEN); break; @@ -1170,18 +1165,18 @@ int pmix1_disconnect(opal_list_t *procs) ret = PMIx_Disconnect(parray, cnt, NULL, 0); PMIX_PROC_FREE(parray, cnt); - return pmix1_convert_rc(ret); + return pmix_ext_convert_rc(ret); } -int pmix1_disconnectnb(opal_list_t *procs, +int pmix_ext_disconnectnb(opal_list_t *procs, opal_pmix_op_cbfunc_t cbfunc, void *cbdata) { pmix_status_t ret; size_t n, cnt=0; opal_namelist_t *ptr; - pmix1_opcaddy_t *op; - opal_pmix1_jobid_trkr_t *job; + pmix_ext_opcaddy_t *op; + opal_pmix_ext_jobid_trkr_t *job; /* protect against bozo error */ if (NULL == procs || 0 == (cnt = opal_list_get_size(procs))) { @@ -1189,7 +1184,7 @@ int pmix1_disconnectnb(opal_list_t *procs, } /* create the caddy */ - op = OBJ_NEW(pmix1_opcaddy_t); + op = OBJ_NEW(pmix_ext_opcaddy_t); op->opcbfunc = cbfunc; op->cbdata = cbdata; op->nprocs = cnt; @@ -1201,7 +1196,7 @@ int pmix1_disconnectnb(opal_list_t *procs, OPAL_LIST_FOREACH(ptr, procs, opal_namelist_t) { /* look thru our list of jobids and find the * corresponding nspace */ - OPAL_LIST_FOREACH(job, &mca_pmix_external_component.jobids, opal_pmix1_jobid_trkr_t) { + OPAL_LIST_FOREACH(job, &mca_pmix_external_component.jobids, opal_pmix_ext_jobid_trkr_t) { if (job->jobid == ptr->name.jobid) { (void)strncpy(op->procs[n].nspace, job->nspace, PMIX_MAX_NSLEN); break; @@ -1217,11 +1212,11 @@ int pmix1_disconnectnb(opal_list_t *procs, ret = PMIx_Disconnect_nb(op->procs, op->nprocs, NULL, 0, opcbfunc, op); - return pmix1_convert_rc(ret); + return pmix_ext_convert_rc(ret); } -int pmix1_resolve_peers(const char *nodename, opal_jobid_t jobid, +int pmix_ext_resolve_peers(const char *nodename, opal_jobid_t jobid, opal_list_t *procs) { char *nspace; @@ -1230,13 +1225,13 @@ int pmix1_resolve_peers(const char *nodename, opal_jobid_t jobid, opal_namelist_t *nm; int rc; pmix_status_t ret; - opal_pmix1_jobid_trkr_t *job, *jptr; + opal_pmix_ext_jobid_trkr_t *job, *jptr; if (OPAL_JOBID_WILDCARD == jobid) { nspace = NULL; } else { job = NULL; - OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix1_jobid_trkr_t) { + OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix_ext_jobid_trkr_t) { if (jptr->jobid == jobid) { job = jptr; break; @@ -1249,7 +1244,7 @@ int pmix1_resolve_peers(const char *nodename, opal_jobid_t jobid, } ret = PMIx_Resolve_peers(nodename, nspace, &array, &nprocs); - rc = pmix1_convert_rc(ret); + rc = pmix_ext_convert_rc(ret); if (NULL != array && 0 < nprocs) { for (n=0; n < nprocs; n++) { @@ -1266,14 +1261,14 @@ int pmix1_resolve_peers(const char *nodename, opal_jobid_t jobid, } /* if we don't already have it, add this to our jobid tracker */ job = NULL; - OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix1_jobid_trkr_t) { + OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix_ext_jobid_trkr_t) { if (jptr->jobid == nm->name.jobid) { job = jptr; break; } } if (NULL == job) { - job = OBJ_NEW(opal_pmix1_jobid_trkr_t); + job = OBJ_NEW(opal_pmix_ext_jobid_trkr_t); (void)strncpy(job->nspace, nspace, PMIX_MAX_NSLEN); job->jobid = jobid; opal_list_append(&mca_pmix_external_component.jobids, &job->super); @@ -1286,17 +1281,17 @@ int pmix1_resolve_peers(const char *nodename, opal_jobid_t jobid, return rc; } -int pmix1_resolve_nodes(opal_jobid_t jobid, char **nodelist) +int pmix_ext_resolve_nodes(opal_jobid_t jobid, char **nodelist) { pmix_status_t ret; char *nspace=NULL; - opal_pmix1_jobid_trkr_t *job, *jptr; + opal_pmix_ext_jobid_trkr_t *job, *jptr; if (OPAL_JOBID_WILDCARD != jobid) { /* look thru our list of jobids and find the * corresponding nspace */ job = NULL; - OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix1_jobid_trkr_t) { + OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix_ext_jobid_trkr_t) { if (jptr->jobid == jobid) { job = jptr; break; @@ -1310,5 +1305,5 @@ int pmix1_resolve_nodes(opal_jobid_t jobid, char **nodelist) ret = PMIx_Resolve_nodes(nspace, nodelist); - return pmix1_convert_rc(ret);; + return pmix_ext_convert_rc(ret);; } diff --git a/opal/mca/pmix/external/pmix_ext_server_north.c b/opal/mca/pmix/external/pmix_ext_server_north.c index 8b75dcf701..ce049610d6 100644 --- a/opal/mca/pmix/external/pmix_ext_server_north.c +++ b/opal/mca/pmix/external/pmix_ext_server_north.c @@ -3,7 +3,7 @@ * Copyright (c) 2014-2015 Intel, Inc. All rights reserved. * Copyright (c) 2014-2016 Research Organization for Information Science * and Technology (RIST). All rights reserved. - * Copyright (c) 2014-2015 Mellanox Technologies, Inc. + * Copyright (c) 2014 Mellanox Technologies, Inc. * All rights reserved. * $COPYRIGHT$ * @@ -80,11 +80,11 @@ static pmix_status_t server_disconnect_fn(const pmix_proc_t procs[], size_t npro static pmix_status_t server_register_events(const pmix_info_t info[], size_t ninfo, pmix_op_cbfunc_t cbfunc, void *cbdata); static pmix_status_t server_deregister_events(const pmix_info_t info[], size_t ninfo, - pmix_op_cbfunc_t cbfunc, void *cbdata); + pmix_op_cbfunc_t cbfunc, void *cbdata); static pmix_status_t server_listener_fn(int listening_sd, pmix_connection_cbfunc_t cbfunc); -pmix_server_module_t mymodule = { +pmix_server_module_t pmix_external_module = { server_client_connected_fn, server_client_finalized_fn, server_abort_fn, @@ -101,15 +101,15 @@ pmix_server_module_t mymodule = { server_listener_fn }; -opal_pmix_server_module_t *host_module = NULL; +opal_pmix_server_module_t *pmix_external_host_module = NULL; static void opal_opcbfunc(int status, void *cbdata) { - pmix1_opalcaddy_t *opalcaddy = (pmix1_opalcaddy_t*)cbdata; + pmix_ext_opalcaddy_t *opalcaddy = (pmix_ext_opalcaddy_t*)cbdata; if (NULL != opalcaddy->opcbfunc) { - opalcaddy->opcbfunc(pmix1_convert_opalrc(status), opalcaddy->cbdata); + opalcaddy->opcbfunc(pmix_ext_convert_opalrc(status), opalcaddy->cbdata); } OBJ_RELEASE(opalcaddy); } @@ -119,49 +119,49 @@ static pmix_status_t server_client_connected_fn(const pmix_proc_t *p, void *serv int rc; opal_process_name_t proc; - if (NULL == host_module || NULL == host_module->client_connected) { + if (NULL == pmix_external_host_module || NULL == pmix_external_host_module->client_connected) { return PMIX_SUCCESS; } /* convert the nspace/rank to an opal_process_name_t */ if (OPAL_SUCCESS != (rc = opal_convert_string_to_jobid(&proc.jobid, p->nspace))) { - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } proc.vpid = p->rank; /* pass it up */ - rc = host_module->client_connected(&proc, server_object); - return pmix1_convert_opalrc(rc); + rc = pmix_external_host_module->client_connected(&proc, server_object); + return pmix_ext_convert_opalrc(rc); } static pmix_status_t server_client_finalized_fn(const pmix_proc_t *p, void* server_object, pmix_op_cbfunc_t cbfunc, void *cbdata) { int rc; - pmix1_opalcaddy_t *opalcaddy; + pmix_ext_opalcaddy_t *opalcaddy; opal_process_name_t proc; - if (NULL == host_module || NULL == host_module->client_finalized) { + if (NULL == pmix_external_host_module || NULL == pmix_external_host_module->client_finalized) { return PMIX_SUCCESS; } /* convert the nspace/rank to an opal_process_name_t */ if (OPAL_SUCCESS != (rc = opal_convert_string_to_jobid(&proc.jobid, p->nspace))) { - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } proc.vpid = p->rank; /* setup the caddy */ - opalcaddy = OBJ_NEW(pmix1_opalcaddy_t); + opalcaddy = OBJ_NEW(pmix_ext_opalcaddy_t); opalcaddy->opcbfunc = cbfunc; opalcaddy->cbdata = cbdata; /* pass it up */ - rc = host_module->client_finalized(&proc, server_object, opal_opcbfunc, opalcaddy); + rc = pmix_external_host_module->client_finalized(&proc, server_object, opal_opcbfunc, opalcaddy); if (OPAL_SUCCESS != rc) { OBJ_RELEASE(opalcaddy); } - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } static pmix_status_t server_abort_fn(const pmix_proc_t *p, void *server_object, @@ -173,20 +173,20 @@ static pmix_status_t server_abort_fn(const pmix_proc_t *p, void *server_object, opal_namelist_t *nm; opal_process_name_t proc; int rc; - pmix1_opalcaddy_t *opalcaddy; + pmix_ext_opalcaddy_t *opalcaddy; - if (NULL == host_module || NULL == host_module->abort) { + if (NULL == pmix_external_host_module || NULL == pmix_external_host_module->abort) { return PMIX_ERR_NOT_SUPPORTED; } /* convert the nspace/rank to an opal_process_name_t */ if (OPAL_SUCCESS != (rc = opal_convert_string_to_jobid(&proc.jobid, p->nspace))) { - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } proc.vpid = p->rank; /* setup the caddy */ - opalcaddy = OBJ_NEW(pmix1_opalcaddy_t); + opalcaddy = OBJ_NEW(pmix_ext_opalcaddy_t); opalcaddy->opcbfunc = cbfunc; opalcaddy->cbdata = cbdata; @@ -196,7 +196,7 @@ static pmix_status_t server_abort_fn(const pmix_proc_t *p, void *server_object, opal_list_append(&opalcaddy->procs, &nm->super); if (OPAL_SUCCESS != (rc = opal_convert_string_to_jobid(&nm->name.jobid, procs[n].nspace))) { OBJ_RELEASE(opalcaddy); - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } if (PMIX_RANK_WILDCARD == procs[n].rank) { nm->name.vpid = OPAL_VPID_WILDCARD; @@ -206,17 +206,17 @@ static pmix_status_t server_abort_fn(const pmix_proc_t *p, void *server_object, } /* pass it up */ - rc = host_module->abort(&proc, server_object, status, msg, + rc = pmix_external_host_module->abort(&proc, server_object, status, msg, &opalcaddy->procs, opal_opcbfunc, opalcaddy); if (OPAL_SUCCESS != rc) { OBJ_RELEASE(opalcaddy); } - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } static void _data_release(void *cbdata) { - pmix1_opalcaddy_t *opalcaddy = (pmix1_opalcaddy_t*)cbdata; + pmix_ext_opalcaddy_t *opalcaddy = (pmix_ext_opalcaddy_t*)cbdata; if (NULL != opalcaddy->odmdxfunc) { opalcaddy->odmdxfunc(opalcaddy->ocbdata); @@ -228,9 +228,9 @@ static void opmdx_response(int status, const char *data, size_t sz, void *cbdata opal_pmix_release_cbfunc_t relcbfunc, void *relcbdata) { pmix_status_t rc; - pmix1_opalcaddy_t *opalcaddy = (pmix1_opalcaddy_t*)cbdata; + pmix_ext_opalcaddy_t *opalcaddy = (pmix_ext_opalcaddy_t*)cbdata; - rc = pmix1_convert_rc(status); + rc = pmix_ext_convert_rc(status); if (NULL != opalcaddy->mdxcbfunc) { opalcaddy->odmdxfunc = relcbfunc; opalcaddy->ocbdata = relcbdata; @@ -246,18 +246,18 @@ static pmix_status_t server_fencenb_fn(const pmix_proc_t procs[], size_t nprocs, char *data, size_t ndata, pmix_modex_cbfunc_t cbfunc, void *cbdata) { - pmix1_opalcaddy_t *opalcaddy; + pmix_ext_opalcaddy_t *opalcaddy; size_t n; opal_namelist_t *nm; opal_value_t *iptr; int rc; - if (NULL == host_module || NULL == host_module->fence_nb) { + if (NULL == pmix_external_host_module || NULL == pmix_external_host_module->fence_nb) { return PMIX_ERR_NOT_SUPPORTED; } /* setup the caddy */ - opalcaddy = OBJ_NEW(pmix1_opalcaddy_t); + opalcaddy = OBJ_NEW(pmix_ext_opalcaddy_t); opalcaddy->mdxcbfunc = cbfunc; opalcaddy->cbdata = cbdata; @@ -267,7 +267,7 @@ static pmix_status_t server_fencenb_fn(const pmix_proc_t procs[], size_t nprocs, opal_list_append(&opalcaddy->procs, &nm->super); if (OPAL_SUCCESS != (rc = opal_convert_string_to_jobid(&nm->name.jobid, procs[n].nspace))) { OBJ_RELEASE(opalcaddy); - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } if (PMIX_RANK_WILDCARD == procs[n].rank) { nm->name.vpid = OPAL_VPID_WILDCARD; @@ -281,19 +281,19 @@ static pmix_status_t server_fencenb_fn(const pmix_proc_t procs[], size_t nprocs, iptr = OBJ_NEW(opal_value_t); opal_list_append(&opalcaddy->info, &iptr->super); iptr->key = strdup(info[n].key); - if (OPAL_SUCCESS != (rc = pmix1_value_unload(iptr, &info[n].value))) { + if (OPAL_SUCCESS != (rc = pmix_ext_value_unload(iptr, &info[n].value))) { OBJ_RELEASE(opalcaddy); - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } } /* pass it up */ - rc = host_module->fence_nb(&opalcaddy->procs, &opalcaddy->info, + rc = pmix_external_host_module->fence_nb(&opalcaddy->procs, &opalcaddy->info, data, ndata, opmdx_response, opalcaddy); if (OPAL_SUCCESS != rc) { OBJ_RELEASE(opalcaddy); } - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } static pmix_status_t server_dmodex_req_fn(const pmix_proc_t *p, @@ -301,18 +301,18 @@ static pmix_status_t server_dmodex_req_fn(const pmix_proc_t *p, pmix_modex_cbfunc_t cbfunc, void *cbdata) { int rc; - pmix1_opalcaddy_t *opalcaddy; + pmix_ext_opalcaddy_t *opalcaddy; opal_process_name_t proc; opal_value_t *iptr; size_t n; - if (NULL == host_module || NULL == host_module->direct_modex) { + if (NULL == pmix_external_host_module || NULL == pmix_external_host_module->direct_modex) { return PMIX_ERR_NOT_SUPPORTED; } /* convert the nspace/rank to an opal_process_name_t */ if (OPAL_SUCCESS != (rc = opal_convert_string_to_jobid(&proc.jobid, p->nspace))) { - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } if (PMIX_RANK_WILDCARD == p->rank) { proc.vpid = OPAL_VPID_WILDCARD; @@ -321,7 +321,7 @@ static pmix_status_t server_dmodex_req_fn(const pmix_proc_t *p, } /* setup the caddy */ - opalcaddy = OBJ_NEW(pmix1_opalcaddy_t); + opalcaddy = OBJ_NEW(pmix_ext_opalcaddy_t); opalcaddy->mdxcbfunc = cbfunc; opalcaddy->cbdata = cbdata; @@ -330,21 +330,21 @@ static pmix_status_t server_dmodex_req_fn(const pmix_proc_t *p, iptr = OBJ_NEW(opal_value_t); opal_list_append(&opalcaddy->info, &iptr->super); iptr->key = strdup(info[n].key); - if (OPAL_SUCCESS != (rc = pmix1_value_unload(iptr, &info[n].value))) { + if (OPAL_SUCCESS != (rc = pmix_ext_value_unload(iptr, &info[n].value))) { OBJ_RELEASE(opalcaddy); - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } } /* pass it up */ - rc = host_module->direct_modex(&proc, &opalcaddy->info, opmdx_response, opalcaddy); + rc = pmix_external_host_module->direct_modex(&proc, &opalcaddy->info, opmdx_response, opalcaddy); if (OPAL_SUCCESS != rc && OPAL_ERR_IN_PROCESS != rc) { OBJ_RELEASE(opalcaddy); } if (OPAL_ERR_IN_PROCESS == rc) { rc = OPAL_SUCCESS; } - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } static pmix_status_t server_publish_fn(const pmix_proc_t *p, @@ -353,17 +353,17 @@ static pmix_status_t server_publish_fn(const pmix_proc_t *p, { int rc; size_t n; - pmix1_opalcaddy_t *opalcaddy; + pmix_ext_opalcaddy_t *opalcaddy; opal_process_name_t proc; opal_value_t *oinfo; - if (NULL == host_module || NULL == host_module->publish) { + if (NULL == pmix_external_host_module || NULL == pmix_external_host_module->publish) { return PMIX_ERR_NOT_SUPPORTED; } /* convert the nspace/rank to an opal_process_name_t */ if (OPAL_SUCCESS != (rc = opal_convert_string_to_jobid(&proc.jobid, p->nspace))) { - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } if (PMIX_RANK_WILDCARD == p->rank) { proc.vpid = OPAL_VPID_WILDCARD; @@ -372,7 +372,7 @@ static pmix_status_t server_publish_fn(const pmix_proc_t *p, } /* setup the caddy */ - opalcaddy = OBJ_NEW(pmix1_opalcaddy_t); + opalcaddy = OBJ_NEW(pmix_ext_opalcaddy_t); opalcaddy->opcbfunc = cbfunc; opalcaddy->cbdata = cbdata; @@ -381,33 +381,33 @@ static pmix_status_t server_publish_fn(const pmix_proc_t *p, oinfo = OBJ_NEW(opal_value_t); opal_list_append(&opalcaddy->info, &oinfo->super); oinfo->key = strdup(info[n].key); - if (OPAL_SUCCESS != (rc = pmix1_value_unload(oinfo, &info[n].value))) { + if (OPAL_SUCCESS != (rc = pmix_ext_value_unload(oinfo, &info[n].value))) { OBJ_RELEASE(opalcaddy); - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } } /* pass it up */ - rc = host_module->publish(&proc, &opalcaddy->info, opal_opcbfunc, opalcaddy); + rc = pmix_external_host_module->publish(&proc, &opalcaddy->info, opal_opcbfunc, opalcaddy); if (OPAL_SUCCESS != rc) { OBJ_RELEASE(opalcaddy); } - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } static void opal_lkupcbfunc(int status, opal_list_t *data, void *cbdata) { - pmix1_opalcaddy_t *opalcaddy = (pmix1_opalcaddy_t*)cbdata; + pmix_ext_opalcaddy_t *opalcaddy = (pmix_ext_opalcaddy_t*)cbdata; pmix_status_t rc; pmix_pdata_t *d=NULL; size_t nd=0, n; opal_pmix_pdata_t *p; if (NULL != opalcaddy->lkupcbfunc) { - rc = pmix1_convert_opalrc(status); + rc = pmix_ext_convert_opalrc(status); /* convert any returned data */ if (NULL != data) { nd = opal_list_get_size(data); @@ -418,7 +418,7 @@ static void opal_lkupcbfunc(int status, (void)opal_snprintf_jobid(d[n].proc.nspace, PMIX_MAX_NSLEN, p->proc.jobid); d[n].proc.rank = p->proc.vpid; (void)strncpy(d[n].key, p->value.key, PMIX_MAX_KEYLEN); - pmix1_value_load(&d[n].value, &p->value); + pmix_ext_value_load(&d[n].value, &p->value); } } opalcaddy->lkupcbfunc(rc, d, nd, opalcaddy->cbdata); @@ -431,18 +431,18 @@ static pmix_status_t server_lookup_fn(const pmix_proc_t *p, char **keys, pmix_lookup_cbfunc_t cbfunc, void *cbdata) { int rc; - pmix1_opalcaddy_t *opalcaddy; + pmix_ext_opalcaddy_t *opalcaddy; opal_process_name_t proc; opal_value_t *iptr; size_t n; - if (NULL == host_module || NULL == host_module->lookup) { + if (NULL == pmix_external_host_module || NULL == pmix_external_host_module->lookup) { return PMIX_ERR_NOT_SUPPORTED; } /* convert the nspace/rank to an opal_process_name_t */ if (OPAL_SUCCESS != (rc = opal_convert_string_to_jobid(&proc.jobid, p->nspace))) { - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } if (PMIX_RANK_WILDCARD == p->rank) { proc.vpid = OPAL_VPID_WILDCARD; @@ -451,7 +451,7 @@ static pmix_status_t server_lookup_fn(const pmix_proc_t *p, char **keys, } /* setup the caddy */ - opalcaddy = OBJ_NEW(pmix1_opalcaddy_t); + opalcaddy = OBJ_NEW(pmix_ext_opalcaddy_t); opalcaddy->lkupcbfunc = cbfunc; opalcaddy->cbdata = cbdata; @@ -460,19 +460,19 @@ static pmix_status_t server_lookup_fn(const pmix_proc_t *p, char **keys, iptr = OBJ_NEW(opal_value_t); opal_list_append(&opalcaddy->info, &iptr->super); iptr->key = strdup(info[n].key); - if (OPAL_SUCCESS != (rc = pmix1_value_unload(iptr, &info[n].value))) { + if (OPAL_SUCCESS != (rc = pmix_ext_value_unload(iptr, &info[n].value))) { OBJ_RELEASE(opalcaddy); - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } } /* pass it up */ - rc = host_module->lookup(&proc, keys, &opalcaddy->info, opal_lkupcbfunc, opalcaddy); + rc = pmix_external_host_module->lookup(&proc, keys, &opalcaddy->info, opal_lkupcbfunc, opalcaddy); if (OPAL_SUCCESS != rc) { OBJ_RELEASE(opalcaddy); } - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } @@ -481,18 +481,18 @@ static pmix_status_t server_unpublish_fn(const pmix_proc_t *p, char **keys, pmix_op_cbfunc_t cbfunc, void *cbdata) { int rc; - pmix1_opalcaddy_t *opalcaddy; + pmix_ext_opalcaddy_t *opalcaddy; opal_process_name_t proc; opal_value_t *iptr; size_t n; - if (NULL == host_module || NULL == host_module->unpublish) { + if (NULL == pmix_external_host_module || NULL == pmix_external_host_module->unpublish) { return PMIX_SUCCESS; } /* convert the nspace/rank to an opal_process_name_t */ if (OPAL_SUCCESS != (rc = opal_convert_string_to_jobid(&proc.jobid, p->nspace))) { - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } if (PMIX_RANK_WILDCARD == p->rank) { proc.vpid = OPAL_VPID_WILDCARD; @@ -501,7 +501,7 @@ static pmix_status_t server_unpublish_fn(const pmix_proc_t *p, char **keys, } /* setup the caddy */ - opalcaddy = OBJ_NEW(pmix1_opalcaddy_t); + opalcaddy = OBJ_NEW(pmix_ext_opalcaddy_t); opalcaddy->opcbfunc = cbfunc; opalcaddy->cbdata = cbdata; @@ -510,29 +510,29 @@ static pmix_status_t server_unpublish_fn(const pmix_proc_t *p, char **keys, iptr = OBJ_NEW(opal_value_t); opal_list_append(&opalcaddy->info, &iptr->super); iptr->key = strdup(info[n].key); - if (OPAL_SUCCESS != (rc = pmix1_value_unload(iptr, &info[n].value))) { + if (OPAL_SUCCESS != (rc = pmix_ext_value_unload(iptr, &info[n].value))) { OBJ_RELEASE(opalcaddy); - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } } /* pass it up */ - rc = host_module->unpublish(&proc, keys, &opalcaddy->info, opal_opcbfunc, opalcaddy); + rc = pmix_external_host_module->unpublish(&proc, keys, &opalcaddy->info, opal_opcbfunc, opalcaddy); if (OPAL_SUCCESS != rc) { OBJ_RELEASE(opalcaddy); } - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } static void opal_spncbfunc(int status, opal_jobid_t jobid, void *cbdata) { - pmix1_opalcaddy_t *opalcaddy = (pmix1_opalcaddy_t*)cbdata; + pmix_ext_opalcaddy_t *opalcaddy = (pmix_ext_opalcaddy_t*)cbdata; pmix_status_t rc; char nspace[PMIX_MAX_NSLEN]; if (NULL != opalcaddy->spwncbfunc) { - rc = pmix1_convert_opalrc(status); + rc = pmix_ext_convert_opalrc(status); /* convert the jobid */ (void)opal_snprintf_jobid(nspace, PMIX_MAX_NSLEN, jobid); opalcaddy->spwncbfunc(rc, nspace, opalcaddy->cbdata); @@ -545,20 +545,20 @@ static pmix_status_t server_spawn_fn(const pmix_proc_t *p, const pmix_app_t apps[], size_t napps, pmix_spawn_cbfunc_t cbfunc, void *cbdata) { - pmix1_opalcaddy_t *opalcaddy; + pmix_ext_opalcaddy_t *opalcaddy; opal_process_name_t proc; opal_pmix_app_t *app; opal_value_t *oinfo; size_t k, n; int rc; - if (NULL == host_module || NULL == host_module->spawn) { + if (NULL == pmix_external_host_module || NULL == pmix_external_host_module->spawn) { return PMIX_ERR_NOT_SUPPORTED; } /* convert the nspace/rank to an opal_process_name_t */ if (OPAL_SUCCESS != (rc = opal_convert_string_to_jobid(&proc.jobid, p->nspace))) { - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } if (PMIX_RANK_WILDCARD == p->rank) { proc.vpid = OPAL_VPID_WILDCARD; @@ -567,7 +567,7 @@ static pmix_status_t server_spawn_fn(const pmix_proc_t *p, } /* setup the caddy */ - opalcaddy = OBJ_NEW(pmix1_opalcaddy_t); + opalcaddy = OBJ_NEW(pmix_ext_opalcaddy_t); opalcaddy->spwncbfunc = cbfunc; opalcaddy->cbdata = cbdata; @@ -576,9 +576,9 @@ static pmix_status_t server_spawn_fn(const pmix_proc_t *p, oinfo = OBJ_NEW(opal_value_t); opal_list_append(&opalcaddy->info, &oinfo->super); oinfo->key = strdup(job_info[k].key); - if (OPAL_SUCCESS != (rc = pmix1_value_unload(oinfo, &job_info[k].value))) { + if (OPAL_SUCCESS != (rc = pmix_ext_value_unload(oinfo, &job_info[k].value))) { OBJ_RELEASE(opalcaddy); - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } } @@ -601,21 +601,21 @@ static pmix_status_t server_spawn_fn(const pmix_proc_t *p, oinfo = OBJ_NEW(opal_value_t); opal_list_append(&app->info, &oinfo->super); oinfo->key = strdup(apps[n].info[k].key); - if (OPAL_SUCCESS != (rc = pmix1_value_unload(oinfo, &apps[n].info[k].value))) { + if (OPAL_SUCCESS != (rc = pmix_ext_value_unload(oinfo, &apps[n].info[k].value))) { OBJ_RELEASE(opalcaddy); - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } } } /* pass it up */ - rc = host_module->spawn(&proc, &opalcaddy->info, &opalcaddy->apps, opal_spncbfunc, opalcaddy); + rc = pmix_external_host_module->spawn(&proc, &opalcaddy->info, &opalcaddy->apps, opal_spncbfunc, opalcaddy); if (OPAL_SUCCESS != rc) { OPAL_ERROR_LOG(rc); OBJ_RELEASE(opalcaddy); } - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } @@ -624,17 +624,17 @@ static pmix_status_t server_connect_fn(const pmix_proc_t procs[], size_t nprocs, pmix_op_cbfunc_t cbfunc, void *cbdata) { int rc; - pmix1_opalcaddy_t *opalcaddy; + pmix_ext_opalcaddy_t *opalcaddy; opal_namelist_t *nm; size_t n; opal_value_t *oinfo; - if (NULL == host_module || NULL == host_module->connect) { + if (NULL == pmix_external_host_module || NULL == pmix_external_host_module->connect) { return PMIX_ERR_NOT_SUPPORTED; } /* setup the caddy */ - opalcaddy = OBJ_NEW(pmix1_opalcaddy_t); + opalcaddy = OBJ_NEW(pmix_ext_opalcaddy_t); opalcaddy->opcbfunc = cbfunc; opalcaddy->cbdata = cbdata; @@ -644,7 +644,7 @@ static pmix_status_t server_connect_fn(const pmix_proc_t procs[], size_t nprocs, opal_list_append(&opalcaddy->procs, &nm->super); if (OPAL_SUCCESS != (rc = opal_convert_string_to_jobid(&nm->name.jobid, procs[n].nspace))) { OBJ_RELEASE(opalcaddy); - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } if (PMIX_RANK_WILDCARD == procs[n].rank) { nm->name.vpid = OPAL_VPID_WILDCARD; @@ -658,19 +658,19 @@ static pmix_status_t server_connect_fn(const pmix_proc_t procs[], size_t nprocs, oinfo = OBJ_NEW(opal_value_t); opal_list_append(&opalcaddy->info, &oinfo->super); oinfo->key = strdup(info[n].key); - if (OPAL_SUCCESS != (rc = pmix1_value_unload(oinfo, &info[n].value))) { + if (OPAL_SUCCESS != (rc = pmix_ext_value_unload(oinfo, &info[n].value))) { OBJ_RELEASE(opalcaddy); - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } } /* pass it up */ - rc = host_module->connect(&opalcaddy->procs, &opalcaddy->info, opal_opcbfunc, opalcaddy); + rc = pmix_external_host_module->connect(&opalcaddy->procs, &opalcaddy->info, opal_opcbfunc, opalcaddy); if (OPAL_SUCCESS != rc) { OBJ_RELEASE(opalcaddy); } - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } @@ -679,17 +679,17 @@ static pmix_status_t server_disconnect_fn(const pmix_proc_t procs[], size_t npro pmix_op_cbfunc_t cbfunc, void *cbdata) { int rc; - pmix1_opalcaddy_t *opalcaddy; + pmix_ext_opalcaddy_t *opalcaddy; opal_namelist_t *nm; size_t n; opal_value_t *oinfo; - if (NULL == host_module || NULL == host_module->disconnect) { + if (NULL == pmix_external_host_module || NULL == pmix_external_host_module->disconnect) { return PMIX_ERR_NOT_SUPPORTED; } /* setup the caddy */ - opalcaddy = OBJ_NEW(pmix1_opalcaddy_t); + opalcaddy = OBJ_NEW(pmix_ext_opalcaddy_t); opalcaddy->opcbfunc = cbfunc; opalcaddy->cbdata = cbdata; @@ -699,7 +699,7 @@ static pmix_status_t server_disconnect_fn(const pmix_proc_t procs[], size_t npro opal_list_append(&opalcaddy->procs, &nm->super); if (OPAL_SUCCESS != (rc = opal_convert_string_to_jobid(&nm->name.jobid, procs[n].nspace))) { OBJ_RELEASE(opalcaddy); - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } if (PMIX_RANK_WILDCARD == procs[n].rank) { nm->name.vpid = OPAL_VPID_WILDCARD; @@ -713,31 +713,31 @@ static pmix_status_t server_disconnect_fn(const pmix_proc_t procs[], size_t npro oinfo = OBJ_NEW(opal_value_t); opal_list_append(&opalcaddy->info, &oinfo->super); oinfo->key = strdup(info[n].key); - if (OPAL_SUCCESS != (rc = pmix1_value_unload(oinfo, &info[n].value))) { + if (OPAL_SUCCESS != (rc = pmix_ext_value_unload(oinfo, &info[n].value))) { OBJ_RELEASE(opalcaddy); - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } } /* pass it up */ - rc = host_module->disconnect(&opalcaddy->procs, &opalcaddy->info, opal_opcbfunc, opalcaddy); + rc = pmix_external_host_module->disconnect(&opalcaddy->procs, &opalcaddy->info, opal_opcbfunc, opalcaddy); if (OPAL_SUCCESS != rc) { OBJ_RELEASE(opalcaddy); } - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } static pmix_status_t server_register_events(const pmix_info_t info[], size_t ninfo, pmix_op_cbfunc_t cbfunc, void *cbdata) { - pmix1_opalcaddy_t *opalcaddy; + pmix_ext_opalcaddy_t *opalcaddy; size_t n; opal_value_t *oinfo; int rc; /* setup the caddy */ - opalcaddy = OBJ_NEW(pmix1_opalcaddy_t); + opalcaddy = OBJ_NEW(pmix_ext_opalcaddy_t); opalcaddy->opcbfunc = cbfunc; opalcaddy->cbdata = cbdata; @@ -746,19 +746,19 @@ static pmix_status_t server_register_events(const pmix_info_t info[], size_t nin oinfo = OBJ_NEW(opal_value_t); opal_list_append(&opalcaddy->info, &oinfo->super); oinfo->key = strdup(info[n].key); - if (OPAL_SUCCESS != (rc = pmix1_value_unload(oinfo, &info[n].value))) { + if (OPAL_SUCCESS != (rc = pmix_ext_value_unload(oinfo, &info[n].value))) { OBJ_RELEASE(opalcaddy); - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } } /* pass it up */ - rc = host_module->register_events(&opalcaddy->info, opal_opcbfunc, opalcaddy); + rc = pmix_external_host_module->register_events(&opalcaddy->info, opal_opcbfunc, opalcaddy); if (OPAL_SUCCESS != rc) { OBJ_RELEASE(opalcaddy); } - return pmix1_convert_opalrc(rc); + return pmix_ext_convert_opalrc(rc); } static pmix_status_t server_deregister_events(const pmix_info_t info[], size_t ninfo, @@ -771,10 +771,10 @@ static pmix_status_t server_listener_fn(int listening_sd, { int rc; - if (NULL == host_module || NULL == host_module->listener) { + if (NULL == pmix_external_host_module || NULL == pmix_external_host_module->listener) { return PMIX_ERR_NOT_SUPPORTED; } - rc = host_module->listener(listening_sd, cbfunc); - return pmix1_convert_opalrc(rc); + rc = pmix_external_host_module->listener(listening_sd, cbfunc); + return pmix_ext_convert_opalrc(rc); } diff --git a/opal/mca/pmix/external/pmix_ext_server_south.c b/opal/mca/pmix/external/pmix_ext_server_south.c index 2feed76309..5b4e29c8ca 100644 --- a/opal/mca/pmix/external/pmix_ext_server_south.c +++ b/opal/mca/pmix/external/pmix_ext_server_south.c @@ -3,7 +3,6 @@ * Copyright (c) 2014-2015 Intel, Inc. All rights reserved. * Copyright (c) 2014-2016 Research Organization for Information Science * and Technology (RIST). All rights reserved. - * Copyright (c) 2014-2015 Intel, Inc. All rights reserved. * Copyright (c) 2014 Mellanox Technologies, Inc. * All rights reserved. * $COPYRIGHT$ @@ -45,61 +44,50 @@ /* These are the interfaces used by the OMPI/ORTE/OPAL layer to call * down into the embedded PMIx server. */ -extern pmix_server_module_t mymodule; -extern opal_pmix_server_module_t *host_module; +extern pmix_server_module_t pmix_external_module; +extern opal_pmix_server_module_t *pmix_external_host_module; static char *dbgvalue=NULL; static int errhdler_ref = 0; -static void completion_handler (void * cbdata) { - int * cond = (int *)cbdata; - *cond = 0; +static void release_cbfunc(void *cbdata) +{ + pmix_ext_opalcaddy_t *cd = (pmix_ext_opalcaddy_t*)cbdata; + OBJ_RELEASE(cd); } - -#define PMIX_WAIT_FOR_COMPLETION(a) \ - do { \ - while ((a)) { \ - usleep(10); \ - } \ - } while (0); - static void myerr(pmix_status_t status, pmix_proc_t procs[], size_t nprocs, pmix_info_t info[], size_t ninfo) { int rc; - opal_list_t plist, ilist; opal_namelist_t *nm; opal_value_t *iptr; - volatile int cond = 1; size_t n; + pmix_ext_opalcaddy_t *cd; /* convert the incoming status */ - rc = pmix1_convert_rc(status); + rc = pmix_ext_convert_rc(status); + + /* setup the caddy */ + cd = OBJ_NEW(pmix_ext_opalcaddy_t); /* convert the array of procs */ - OBJ_CONSTRUCT(&plist, opal_list_t); for (n=0; n < nprocs; n++) { nm = OBJ_NEW(opal_namelist_t); nm->name.jobid = strtoul(procs[n].nspace, NULL, 10); nm->name.vpid = procs[n].rank; - opal_list_append(&plist, &nm->super); + opal_list_append(&cd->procs, &nm->super); } /* convert the array of info */ - OBJ_CONSTRUCT(&ilist, opal_list_t); for (n=0; n < ninfo; n++) { iptr = OBJ_NEW(opal_value_t); iptr->key = strdup(info[n].key); - pmix1_value_unload(iptr, &info[n].value); - opal_list_append(&plist, &iptr->super); + pmix_ext_value_unload(iptr, &info[n].value); + opal_list_append(&cd->info, &iptr->super); } /* call the base errhandler */ - opal_pmix_base_errhandler(rc, &plist, &ilist, completion_handler, (void *)&cond); - PMIX_WAIT_FOR_COMPLETION(cond); - - OPAL_LIST_DESTRUCT(&plist); - OPAL_LIST_DESTRUCT(&ilist); + opal_pmix_base_errhandler(rc, &cd->procs, &cd->info, release_cbfunc, cd); } static void errreg_cbfunc(pmix_status_t status, @@ -112,7 +100,7 @@ static void errreg_cbfunc(pmix_status_t status, status, errhandler_ref); } -int pmix1_server_init(opal_pmix_server_module_t *module, +int pmix_ext_server_init(opal_pmix_server_module_t *module, opal_list_t *info) { pmix_status_t rc; @@ -133,7 +121,7 @@ int pmix1_server_init(opal_pmix_server_module_t *module, n = 0; OPAL_LIST_FOREACH(kv, info, opal_value_t) { (void)strncpy(pinfo[n].key, kv->key, PMIX_MAX_KEYLEN); - pmix1_value_load(&pinfo[n].value, kv); + pmix_ext_value_load(&pinfo[n].value, kv); ++n; } } else { @@ -141,21 +129,21 @@ int pmix1_server_init(opal_pmix_server_module_t *module, pinfo = NULL; } - if (PMIX_SUCCESS != (rc = PMIx_server_init(&mymodule, pinfo, sz))) { + if (PMIX_SUCCESS != (rc = PMIx_server_init(&pmix_external_module, pinfo, sz))) { PMIX_INFO_FREE(pinfo, sz); - return pmix1_convert_rc(rc); + return pmix_ext_convert_rc(rc); } PMIX_INFO_FREE(pinfo, sz); /* record the host module */ - host_module = module; + pmix_external_host_module = module; /* register the errhandler */ PMIx_Register_errhandler(NULL, 0, myerr, errreg_cbfunc, NULL); return OPAL_SUCCESS; } -int pmix1_server_finalize(void) +int pmix_ext_server_finalize(void) { pmix_status_t rc; @@ -163,37 +151,37 @@ int pmix1_server_finalize(void) PMIx_Deregister_errhandler(errhdler_ref, NULL, NULL); rc = PMIx_server_finalize(); - return pmix1_convert_rc(rc); + return pmix_ext_convert_rc(rc); } -int pmix1_server_gen_regex(const char *input, char **regex) +int pmix_ext_server_gen_regex(const char *input, char **regex) { pmix_status_t rc; rc = PMIx_generate_regex(input, regex); - return pmix1_convert_rc(rc); + return pmix_ext_convert_rc(rc); } -int pmix1_server_gen_ppn(const char *input, char **ppn) +int pmix_ext_server_gen_ppn(const char *input, char **ppn) { pmix_status_t rc; rc = PMIx_generate_ppn(input, ppn); - return pmix1_convert_rc(rc); + return pmix_ext_convert_rc(rc); } static void opcbfunc(pmix_status_t status, void *cbdata) { - pmix1_opcaddy_t *op = (pmix1_opcaddy_t*)cbdata; + pmix_ext_opcaddy_t *op = (pmix_ext_opcaddy_t*)cbdata; if (NULL != op->opcbfunc) { - op->opcbfunc(pmix1_convert_rc(status), op->cbdata); + op->opcbfunc(pmix_ext_convert_rc(status), op->cbdata); } OBJ_RELEASE(op); } -int pmix1_server_register_nspace(opal_jobid_t jobid, +int pmix_ext_server_register_nspace(opal_jobid_t jobid, int nlocalprocs, opal_list_t *info, opal_pmix_op_cbfunc_t cbfunc, @@ -204,15 +192,15 @@ int pmix1_server_register_nspace(opal_jobid_t jobid, size_t sz, szmap, m, n; char nspace[PMIX_MAX_NSLEN]; pmix_status_t rc; - pmix1_opcaddy_t *op; + pmix_ext_opcaddy_t *op; opal_list_t *pmapinfo; - opal_pmix1_jobid_trkr_t *job; + opal_pmix_ext_jobid_trkr_t *job; /* convert the jobid */ (void)opal_snprintf_jobid(nspace, PMIX_MAX_NSLEN, jobid); /* store this job in our list of known nspaces */ - job = OBJ_NEW(opal_pmix1_jobid_trkr_t); + job = OBJ_NEW(opal_pmix_ext_jobid_trkr_t); (void)strncpy(job->nspace, nspace, PMIX_MAX_NSLEN); job->jobid = jobid; opal_list_append(&mca_pmix_external_component.jobids, &job->super); @@ -231,16 +219,16 @@ int pmix1_server_register_nspace(opal_jobid_t jobid, pmapinfo = (opal_list_t*)kv->data.ptr; szmap = opal_list_get_size(pmapinfo); PMIX_INFO_CREATE(pmap, szmap); - pinfo[n].value.data.array.array = (struct pmix_info_t*)pmap; + pinfo[n].value.data.array.array = (struct pmix_info*)pmap; pinfo[n].value.data.array.size = szmap; m = 0; OPAL_LIST_FOREACH(k2, pmapinfo, opal_value_t) { (void)strncpy(pmap[m].key, k2->key, PMIX_MAX_KEYLEN); - pmix1_value_load(&pmap[m].value, k2); + pmix_ext_value_load(&pmap[m].value, k2); ++m; } } else { - pmix1_value_load(&pinfo[n].value, kv); + pmix_ext_value_load(&pinfo[n].value, kv); } ++n; } @@ -250,7 +238,7 @@ int pmix1_server_register_nspace(opal_jobid_t jobid, } /* setup the caddy */ - op = OBJ_NEW(pmix1_opcaddy_t); + op = OBJ_NEW(pmix_ext_opcaddy_t); op->info = pinfo; op->sz = sz; op->opcbfunc = cbfunc; @@ -260,15 +248,15 @@ int pmix1_server_register_nspace(opal_jobid_t jobid, if (PMIX_SUCCESS != rc) { OBJ_RELEASE(op); } - return pmix1_convert_rc(rc); + return pmix_ext_convert_rc(rc); } -void pmix1_server_deregister_nspace(opal_jobid_t jobid) +void pmix_ext_server_deregister_nspace(opal_jobid_t jobid) { - opal_pmix1_jobid_trkr_t *jptr; + opal_pmix_ext_jobid_trkr_t *jptr; /* if we don't already have it, we can ignore this */ - OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix1_jobid_trkr_t) { + OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix_ext_jobid_trkr_t) { if (jptr->jobid == jobid) { /* found it - tell the server to deregister */ PMIx_server_deregister_nspace(jptr->nspace); @@ -280,17 +268,17 @@ void pmix1_server_deregister_nspace(opal_jobid_t jobid) } } -int pmix1_server_register_client(const opal_process_name_t *proc, +int pmix_ext_server_register_client(const opal_process_name_t *proc, uid_t uid, gid_t gid, void *server_object, opal_pmix_op_cbfunc_t cbfunc, void *cbdata) { pmix_status_t rc; - pmix1_opcaddy_t *op; + pmix_ext_opcaddy_t *op; /* setup the caddy */ - op = OBJ_NEW(pmix1_opcaddy_t); + op = OBJ_NEW(pmix_ext_opcaddy_t); op->opcbfunc = cbfunc; op->cbdata = cbdata; @@ -303,16 +291,16 @@ int pmix1_server_register_client(const opal_process_name_t *proc, if (PMIX_SUCCESS != rc) { OBJ_RELEASE(op); } - return pmix1_convert_rc(rc); + return pmix_ext_convert_rc(rc); } -void pmix1_server_deregister_client(const opal_process_name_t *proc) +void pmix_ext_server_deregister_client(const opal_process_name_t *proc) { - opal_pmix1_jobid_trkr_t *jptr; + opal_pmix_ext_jobid_trkr_t *jptr; pmix_proc_t p; /* if we don't already have it, we can ignore this */ - OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix1_jobid_trkr_t) { + OPAL_LIST_FOREACH(jptr, &mca_pmix_external_component.jobids, opal_pmix_ext_jobid_trkr_t) { if (jptr->jobid == proc->jobid) { /* found it - tell the server to deregister */ (void)strncpy(p.nspace, jptr->nspace, PMIX_MAX_NSLEN); @@ -324,7 +312,7 @@ void pmix1_server_deregister_client(const opal_process_name_t *proc) } -int pmix1_server_setup_fork(const opal_process_name_t *proc, char ***env) +int pmix_ext_server_setup_fork(const opal_process_name_t *proc, char ***env) { pmix_status_t rc; pmix_proc_t p; @@ -334,7 +322,7 @@ int pmix1_server_setup_fork(const opal_process_name_t *proc, char ***env) p.rank = proc->vpid; rc = PMIx_server_setup_fork(&p, env); - return pmix1_convert_rc(rc); + return pmix_ext_convert_rc(rc); } /* this is the call back up from the embedded PMIx server that @@ -343,23 +331,23 @@ int pmix1_server_setup_fork(const opal_process_name_t *proc, char ***env) static void dmdx_response(pmix_status_t status, char *data, size_t sz, void *cbdata) { int rc; - pmix1_opcaddy_t *op = (pmix1_opcaddy_t*)cbdata; + pmix_ext_opcaddy_t *op = (pmix_ext_opcaddy_t*)cbdata; - rc = pmix1_convert_rc(status); + rc = pmix_ext_convert_rc(status); if (NULL != op->mdxcbfunc) { op->mdxcbfunc(rc, data, sz, op->cbdata, NULL, NULL); } OBJ_RELEASE(op); } -int pmix1_server_dmodex(const opal_process_name_t *proc, +int pmix_ext_server_dmodex(const opal_process_name_t *proc, opal_pmix_modex_cbfunc_t cbfunc, void *cbdata) { - pmix1_opcaddy_t *op; + pmix_ext_opcaddy_t *op; pmix_status_t rc; /* setup the caddy */ - op = OBJ_NEW(pmix1_opcaddy_t); + op = OBJ_NEW(pmix_ext_opcaddy_t); op->mdxcbfunc = cbfunc; op->cbdata = cbdata; @@ -372,10 +360,10 @@ int pmix1_server_dmodex(const opal_process_name_t *proc, if (PMIX_SUCCESS != rc) { OBJ_RELEASE(op); } - return pmix1_convert_rc(rc); + return pmix_ext_convert_rc(rc); } -int pmix1_server_notify_error(int status, +int pmix_ext_server_notify_error(int status, opal_list_t *procs, opal_list_t *error_procs, opal_list_t *info, @@ -386,7 +374,7 @@ int pmix1_server_notify_error(int status, size_t sz, psz, esz, n; pmix_proc_t *ps, *eps; pmix_status_t rc; - pmix1_opcaddy_t *op; + pmix_ext_opcaddy_t *op; opal_namelist_t *nm; /* convert the list of procs */ @@ -424,7 +412,7 @@ int pmix1_server_notify_error(int status, n = 0; OPAL_LIST_FOREACH(kv, info, opal_value_t) { (void)strncpy(pinfo[n].key, kv->key, PMIX_MAX_KEYLEN); - pmix1_value_load(&pinfo[n].value, kv); + pmix_ext_value_load(&pinfo[n].value, kv); } } else { sz = 0; @@ -432,7 +420,7 @@ int pmix1_server_notify_error(int status, } /* setup the caddy */ - op = OBJ_NEW(pmix1_opcaddy_t); + op = OBJ_NEW(pmix_ext_opcaddy_t); op->procs = ps; op->nprocs = psz; op->error_procs = eps; @@ -442,11 +430,11 @@ int pmix1_server_notify_error(int status, op->opcbfunc = cbfunc; op->cbdata = cbdata; - rc = pmix1_convert_opalrc(status); + rc = pmix_ext_convert_opalrc(status); rc = PMIx_Notify_error(rc, ps, psz, eps, esz, - pinfo, sz, opcbfunc, op); + pinfo, sz, opcbfunc, op); if (PMIX_SUCCESS != rc) { OBJ_RELEASE(op); } - return pmix1_convert_rc(rc); + return pmix_ext_convert_rc(rc); }