diff --git a/oshmem/mca/spml/yoda/spml_yoda.c b/oshmem/mca/spml/yoda/spml_yoda.c index a3eba1e921..a3e07b3303 100644 --- a/oshmem/mca/spml/yoda/spml_yoda.c +++ b/oshmem/mca/spml/yoda/spml_yoda.c @@ -2,7 +2,7 @@ /* * Copyright (c) 2013-2015 Mellanox Technologies, Inc. * All rights reserved. - * Copyright (c) 2014 Research Organization for Information Science + * Copyright (c) 2014-2016 Research Organization for Information Science * and Technology (RIST). All rights reserved. * Copyright (c) 2015 Los Alamos National Security, LLC. All rights * reserved. @@ -640,6 +640,12 @@ int mca_spml_yoda_add_procs(oshmem_proc_t** procs, size_t nprocs) goto cleanup_and_return; } + /* create_btl_idx requires the proc was add_proc'ed, so do it now */ + rc = MCA_PML_CALL(add_procs(procs, nprocs)); + if (OMPI_SUCCESS != rc) { + goto cleanup_and_return; + } + /* create btl index and map */ rc = create_btl_list(); if (OSHMEM_SUCCESS != rc) { diff --git a/oshmem/proc/proc.c b/oshmem/proc/proc.c index d0e607c75f..6cc1118273 100644 --- a/oshmem/proc/proc.c +++ b/oshmem/proc/proc.c @@ -1,9 +1,9 @@ /* * Copyright (c) 2013 Mellanox Technologies, Inc. * All rights reserved. - * Copyright (c) 2014-2015 Research Organization for Information Science + * Copyright (c) 2014-2016 Research Organization for Information Science * and Technology (RIST). All rights reserved. - * Copyright (c) 2015 Cisco Systems, Inc. All rights reserved. + * Copyright (c) 2015 Cisco Systems, Inc. All rights reserved. * Copyright (c) 2016 ARM, Inc. All rights reserved. * $COPYRIGHT$ * @@ -79,8 +79,7 @@ int oshmem_proc_group_init(void) == (oshmem_group_all = oshmem_proc_group_create(0, 1, - oshmem_num_procs()))) { - oshmem_proc_group_destroy(oshmem_group_all); + ompi_comm_size(oshmem_comm_world)))) { return OSHMEM_ERROR; } @@ -151,7 +150,7 @@ oshmem_group_t* oshmem_proc_group_create(int pe_start, group->my_pe = oshmem_proc_pe(oshmem_proc_local()); group->is_member = 0; - for (i = 0 ; i < oshmem_num_procs() ; i++) { + for (i = 0 ; i < ompi_comm_size(oshmem_comm_world) ; i++) { proc = oshmem_proc_find(i); if (NULL == proc) { opal_output(0,