Skip to content

Commit a997e63

Browse files
authored
Merge pull request #5386 from rhc54/cmr31/pmix212
v3.1.x: Update to PMIx v2.1.2
2 parents f8f7e9d + 8431a00 commit a997e63

File tree

19 files changed

+1319
-62
lines changed

19 files changed

+1319
-62
lines changed

ompi/errhandler/errcode-internal.h

+2-1
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
* Copyright (c) 2010 Oracle and/or its affiliates. All rights reserved.
1515
* Copyright (c) 2012 Los Alamos National Security, LLC. All rights
1616
* reserved.
17+
* Copyright (c) 2018 Intel, Inc. All rights reserved.
1718
* $COPYRIGHT$
1819
*
1920
* Additional copyrights may follow
@@ -69,7 +70,7 @@ static inline int ompi_errcode_get_mpi_code(int errcode)
6970
it */
7071
for (i = 0; i < ompi_errcode_intern_lastused; i++) {
7172
errc = (ompi_errcode_intern_t *)opal_pointer_array_get_item(&ompi_errcodes_intern, i);
72-
if (errc->code == errcode) {
73+
if (NULL != errc && errc->code == errcode) {
7374
ret = errc->mpi_code;
7475
break;
7576
}

ompi/runtime/ompi_mpi_init.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
* Copyright (c) 2008-2009 Sun Microsystems, Inc. All rights reserved.
1818
* Copyright (c) 2011 Sandia National Laboratories. All rights reserved.
1919
* Copyright (c) 2012-2013 Inria. All rights reserved.
20-
* Copyright (c) 2014-2017 Intel, Inc. All rights reserved.
20+
* Copyright (c) 2014-2018 Intel, Inc. All rights reserved.
2121
* Copyright (c) 2014-2016 Research Organization for Information Science
2222
* and Technology (RIST). All rights reserved.
2323
* Copyright (c) 2016 Mellanox Technologies Ltd. All rights reserved.

opal/mca/btl/usnic/btl_usnic_hwloc.c

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
22
* Copyright (c) 2013-2016 Cisco Systems, Inc. All rights reserved.
3-
* Copyright (c) 2016-2017 Intel, Inc. All rights reserved.
3+
* Copyright (c) 2016-2018 Intel, Inc. All rights reserved.
44
* $COPYRIGHT$
55
*
66
* Additional copyrights may follow
@@ -41,8 +41,8 @@ static int get_distance_matrix(void)
4141
* responsible for freeing it. */
4242

4343
if (NULL == matrix) {
44-
matrix = hwloc_get_whole_distance_matrix_by_type(opal_hwloc_topology,
45-
HWLOC_OBJ_NODE);
44+
matrix = (struct hwloc_distances_s*)hwloc_get_whole_distance_matrix_by_type(opal_hwloc_topology,
45+
HWLOC_OBJ_NODE);
4646
}
4747

4848
return (NULL == matrix) ? OPAL_ERROR : OPAL_SUCCESS;

opal/mca/hwloc/base/hwloc_base_util.c

+4-3
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
* Copyright (c) 2011-2017 Cisco Systems, Inc. All rights reserved
1414
* Copyright (c) 2012-2017 Los Alamos National Security, LLC.
1515
* All rights reserved.
16-
* Copyright (c) 2013-2017 Intel, Inc. All rights reserved.
16+
* Copyright (c) 2013-2018 Intel, Inc. All rights reserved.
1717
* Copyright (c) 2015-2017 Research Organization for Information Science
1818
* and Technology (RIST). All rights reserved.
1919
* $COPYRIGHT$
@@ -2047,8 +2047,9 @@ static void sort_by_dist(hwloc_topology_t topo, char* device_name, opal_list_t *
20472047
hwloc_obj_t root = NULL;
20482048
int depth;
20492049
unsigned i;
2050-
#endif
2050+
#else
20512051
unsigned distances_nr = 0;
2052+
#endif
20522053

20532054
for (device_obj = hwloc_get_obj_by_type(topo, HWLOC_OBJ_OS_DEVICE, 0); device_obj; device_obj = hwloc_get_next_osdev(topo, device_obj)) {
20542055
if (device_obj->attr->osdev.type == HWLOC_OBJ_OSDEV_OPENFABRICS
@@ -2070,7 +2071,7 @@ static void sort_by_dist(hwloc_topology_t topo, char* device_name, opal_list_t *
20702071

20712072
/* find distance matrix for all numa nodes */
20722073
#if HWLOC_API_VERSION < 0x20000
2073-
distances = hwloc_get_whole_distance_matrix_by_type(topo, HWLOC_OBJ_NODE);
2074+
distances = (struct hwloc_distances_s*)hwloc_get_whole_distance_matrix_by_type(topo, HWLOC_OBJ_NODE);
20742075
if (NULL == distances) {
20752076
/* we can try to find distances under group object. This info can be there. */
20762077
depth = hwloc_get_type_depth(topo, HWLOC_OBJ_NODE);

opal/mca/pmix/pmix2x/pmix/LICENSE

+3-3
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ Copyright (c) 2006-2010 Sun Microsystems, Inc. All rights reserved.
2626
Copyright (c) 2006-2010 The University of Houston. All rights reserved.
2727
Copyright (c) 2006-2009 Myricom, Inc. All rights reserved.
2828
Copyright (c) 2007-2008 UT-Battelle, LLC. All rights reserved.
29-
Copyright (c) 2007-2010 IBM Corporation. All rights reserved.
29+
Copyright (c) 2007-2018 IBM Corporation. All rights reserved.
3030
Copyright (c) 1998-2005 Forschungszentrum Juelich, Juelich Supercomputing
3131
Centre, Federal Republic of Germany
3232
Copyright (c) 2005-2008 ZIH, TU Dresden, Federal Republic of Germany
@@ -36,7 +36,7 @@ Copyright (c) 2008-2009 Institut National de Recherche en
3636
Informatique. All rights reserved.
3737
Copyright (c) 2007 Lawrence Livermore National Security, LLC.
3838
All rights reserved.
39-
Copyright (c) 2007-2009 Mellanox Technologies. All rights reserved.
39+
Copyright (c) 2007-2018 Mellanox Technologies. All rights reserved.
4040
Copyright (c) 2006-2010 QLogic Corporation. All rights reserved.
4141
Copyright (c) 2008-2010 Oak Ridge National Labs. All rights reserved.
4242
Copyright (c) 2006-2010 Oracle and/or its affiliates. All rights reserved.
@@ -45,7 +45,7 @@ Copyright (c) 2010 ARM ltd. All rights reserved.
4545
Copyright (c) 2010-2011 Alex Brick <[email protected]>. All rights reserved.
4646
Copyright (c) 2012 The University of Wisconsin-La Crosse. All rights
4747
reserved.
48-
Copyright (c) 2013-2014 Intel, Inc. All rights reserved.
48+
Copyright (c) 2013-2018 Intel, Inc. All rights reserved.
4949
Copyright (c) 2011-2014 NVIDIA Corporation. All rights reserved.
5050

5151
$COPYRIGHT$

opal/mca/pmix/pmix2x/pmix/NEWS

+2-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ example, a bug might be fixed in the master, and then moved to the
2121
current release as well as the "stable" bug fix release branch.
2222

2323

24-
2.1.2 -- TBD
24+
2.1.2 -- 6 July 2018
2525
----------------------
2626
- Added PMIX_VERSION_RELEASE string to pmix_version.h
2727
- Added PMIX_SPAWNED and PMIX_PARENT_ID keys to all procs
@@ -32,6 +32,7 @@ current release as well as the "stable" bug fix release branch.
3232
shared memory region upon first connection
3333
- Fix potential deadlock in PMIx_server_init in an error case
3434
- Fix uninitialized variable
35+
- Fix several memory and file descriptor leaks
3536

3637

3738
2.1.1 -- 5 Mar 2018

opal/mca/pmix/pmix2x/pmix/README

+13-12
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ Copyright (c) 2007 Myricom, Inc. All rights reserved.
1515
Copyright (c) 2008 IBM Corporation. All rights reserved.
1616
Copyright (c) 2010 Oak Ridge National Labs. All rights reserved.
1717
Copyright (c) 2011 University of Houston. All rights reserved.
18-
Copyright (c) 2013-2017 Intel, Inc. All rights reserved.
18+
Copyright (c) 2013-2018 Intel, Inc. All rights reserved.
1919
$COPYRIGHT$
2020

2121
Additional copyrights may follow
@@ -25,13 +25,14 @@ $HEADER$
2525
===========================================================================
2626

2727
When submitting questions and problems, be sure to include as much
28-
extra information as possible. This web page details all the
29-
information that we request in order to provide assistance:
28+
extra information as possible. The issues template on the
29+
GitHub repo provides directions:
3030

31-
http://pmix.github.io/pmix/community/help/
31+
http://github.com/pmix/pmix/issues
3232

3333
The best way to report bugs, send comments, or ask questions is to
34-
sign up on the PMIx mailing list, which is hosted by GoogleGroups:
34+
open an issue on the repo. Alternatively, you are welcome to sign
35+
up for the developer/user mailing list:
3536

3637
3738

@@ -48,7 +49,7 @@ Thanks for your time.
4849

4950
More information is available in the PMIx FAQ:
5051

51-
http://pmix.github.io/pmix/faq/
52+
https://pmix.org/support
5253

5354
We are in early days, so please be patient - info will grow as questions
5455
are addressed.
@@ -63,7 +64,7 @@ General notes
6364

6465
- The majority of PMIx's documentation is here in this file, the
6566
included man pages, and on the web site FAQ
66-
(http://pmix.github.io/pmix/faq). This will eventually be
67+
(https://pmix.org/support). This will eventually be
6768
supplemented with cohesive installation and user documentation files.
6869

6970
- Systems that have been tested are:
@@ -312,7 +313,7 @@ Common Questions
312313
Many common questions about building and using PMIx are answered
313314
on the FAQ:
314315

315-
http://pmix.github.io/pmix/faq/
316+
https://pmix.org/support
316317

317318
===========================================================================
318319

@@ -323,10 +324,10 @@ Found a bug? Got a question? Want to make a suggestion? Want to
323324
contribute to PMIx? Please let us know!
324325

325326
When submitting questions and problems, be sure to include as much
326-
extra information as possible. This web page details all the
327-
information that we request in order to provide assistance:
327+
extra information as possible. Again, the issues template is your
328+
friend in this regard!
328329

329-
http://pmix.github.io/pmix/community/help/
330+
https://github.com/pmix/pmix/issues
330331

331332
Questions and comments should generally be sent to the PMIx mailing
332333
list ([email protected]). Because of spam, only
@@ -338,4 +339,4 @@ user's list:
338339

339340
https://groups.google.com/d/forum/pmix
340341

341-
Make today an PMIx day!
342+
Make today a PMIx day!

opal/mca/pmix/pmix2x/pmix/VERSION

+3-3
Original file line numberDiff line numberDiff line change
@@ -23,14 +23,14 @@ release=2
2323
# The only requirement is that it must be entirely printable ASCII
2424
# characters and have no white space.
2525

26-
greek=rc1
26+
greek=
2727

2828
# If repo_rev is empty, then the repository version number will be
2929
# obtained during "make dist" via the "git describe --tags --always"
3030
# command, or with the date (if "git describe" fails) in the form of
3131
# "date<date>".
3232

33-
repo_rev=gitc9312a8
33+
repo_rev=git8b0bc1f
3434

3535
# If tarball_version is not empty, it is used as the version string in
3636
# the tarball filename, regardless of all other versions listed in
@@ -44,7 +44,7 @@ tarball_version=
4444

4545
# The date when this release was created
4646

47-
date="Jun 18, 2018"
47+
date="Jul 06, 2018"
4848

4949
# The shared library version of each of PMIx's public libraries.
5050
# These versions are maintained in accordance with the "Library

opal/mca/pmix/pmix2x/pmix/contrib/pmix.spec

+1-1
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,7 @@
192192

193193
Summary: An extended/exascale implementation of PMI
194194
Name: %{?_name:%{_name}}%{!?_name:pmix}
195-
Version: 2.1.2rc1
195+
Version: 2.1.2
196196
Release: 1%{?dist}
197197
License: BSD
198198
Group: Development/Libraries

opal/mca/pmix/pmix2x/pmix/src/mca/gds/ds12/gds_dstore.c

+19-17
Original file line numberDiff line numberDiff line change
@@ -2879,6 +2879,8 @@ static pmix_status_t dstore_del_nspace(const char* nspace)
28792879
ns_map_t *ns_map;
28802880
session_t *session_tbl = NULL;
28812881
ns_track_elem_t *trk = NULL;
2882+
int dstor_track_idx;
2883+
size_t session_tbl_idx;
28822884

28832885
PMIX_OUTPUT_VERBOSE((10, pmix_gds_base_framework.framework_output,
28842886
"%s:%d:%s delete nspace `%s`", __FILE__, __LINE__, __func__, nspace));
@@ -2887,7 +2889,8 @@ static pmix_status_t dstore_del_nspace(const char* nspace)
28872889
rc = PMIX_ERR_NOT_AVAILABLE;
28882890
return rc;
28892891
}
2890-
2892+
dstor_track_idx = ns_map_data->track_idx;
2893+
session_tbl_idx = ns_map_data->tbl_idx;
28912894
size = pmix_value_array_get_size(_ns_map_array);
28922895
ns_map = PMIX_VALUE_ARRAY_GET_BASE(_ns_map_array, ns_map_t);
28932896

@@ -2899,30 +2902,29 @@ static pmix_status_t dstore_del_nspace(const char* nspace)
28992902
continue;
29002903
}
29012904
in_use++;
2902-
break;
2903-
}
2904-
}
2905-
2906-
if(ns_map_data->track_idx >= 0) {
2907-
trk = pmix_value_array_get_item(_ns_track_array, ns_map_data->track_idx);
2908-
if((ns_map_data->track_idx + 1) > (int)pmix_value_array_get_size(_ns_track_array)) {
2909-
rc = PMIX_ERR_VALUE_OUT_OF_BOUNDS;
2910-
PMIX_ERROR_LOG(rc);
2911-
goto exit;
2912-
}
2913-
if (true == trk->in_use) {
2914-
PMIX_DESTRUCT(trk);
29152905
}
29162906
}
29172907

29182908
/* A lot of nspaces may be using same session info
29192909
* session record can only be deleted once all references are gone */
29202910
if (!in_use) {
29212911
session_tbl = PMIX_VALUE_ARRAY_GET_BASE(_session_array, session_t);
2922-
29232912
PMIX_OUTPUT_VERBOSE((10, pmix_gds_base_framework.framework_output,
2924-
"%s:%d:%s delete session for jobuid: %d", __FILE__, __LINE__, __func__, session_tbl[ns_map_data->tbl_idx].jobuid));
2925-
_esh_session_release(&session_tbl[ns_map_data->tbl_idx]);
2913+
"%s:%d:%s delete session for jobuid: %d",
2914+
__FILE__, __LINE__, __func__, session_tbl[session_tbl_idx].jobuid));
2915+
size = pmix_value_array_get_size(_ns_track_array);
2916+
if (size && (dstor_track_idx >= 0)) {
2917+
if((dstor_track_idx + 1) > size) {
2918+
rc = PMIX_ERR_VALUE_OUT_OF_BOUNDS;
2919+
PMIX_ERROR_LOG(rc);
2920+
goto exit;
2921+
}
2922+
trk = pmix_value_array_get_item(_ns_track_array, dstor_track_idx);
2923+
if (true == trk->in_use) {
2924+
PMIX_DESTRUCT(trk);
2925+
}
2926+
}
2927+
_esh_session_release(&session_tbl[session_tbl_idx]);
29262928
}
29272929
exit:
29282930
return rc;

opal/mca/pmix/pmix2x/pmix/test/simple/Makefile.am

+27-12
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
# All rights reserved.
1212
# Copyright (c) 2006-2010 Cisco Systems, Inc. All rights reserved.
1313
# Copyright (c) 2012-2013 Los Alamos National Security, Inc. All rights reserved.
14-
# Copyright (c) 2013-2017 Intel, Inc. All rights reserved.
14+
# Copyright (c) 2013-2018 Intel, Inc. All rights reserved.
1515
# $COPYRIGHT$
1616
#
1717
# Additional copyrights may follow
@@ -21,64 +21,79 @@
2121

2222
AM_CPPFLAGS = -I$(top_builddir)/src -I$(top_builddir)/src/include -I$(top_builddir)/include -I$(top_builddir)/include/pmix
2323

24-
noinst_PROGRAMS = simptest simpclient simppub simpdyn simpft simpdmodex test_pmix simptool simpdie simplegacy
24+
headers = simptest.h
2525

26-
simptest_SOURCES = \
26+
noinst_PROGRAMS = simptest simpclient simppub simpdyn simpft simpdmodex \
27+
test_pmix simptool simpdie simplegacy stability quietclient
28+
29+
simptest_SOURCES = $(headers) \
2730
simptest.c
2831
simptest_LDFLAGS = $(PMIX_PKG_CONFIG_LDFLAGS)
2932
simptest_LDADD = \
3033
$(top_builddir)/src/libpmix.la
3134

32-
simpclient_SOURCES = \
35+
simpclient_SOURCES = $(headers) \
3336
simpclient.c
3437
simpclient_LDFLAGS = $(PMIX_PKG_CONFIG_LDFLAGS)
3538
simpclient_LDADD = \
3639
$(top_builddir)/src/libpmix.la
3740

38-
simppub_SOURCES = \
41+
simppub_SOURCES = $(headers) \
3942
simppub.c
4043
simppub_LDFLAGS = $(PMIX_PKG_CONFIG_LDFLAGS)
4144
simppub_LDADD = \
4245
$(top_builddir)/src/libpmix.la
4346

44-
simpdmodex_SOURCES = \
47+
simpdmodex_SOURCES = $(headers) \
4548
simpdmodex.c
4649
simpdmodex_LDFLAGS = $(PMIX_PKG_CONFIG_LDFLAGS)
4750
simpdmodex_LDADD = \
4851
$(top_builddir)/src/libpmix.la
4952

50-
simpft_SOURCES = \
53+
simpft_SOURCES = $(headers) \
5154
simpft.c
5255
simpft_LDFLAGS = $(PMIX_PKG_CONFIG_LDFLAGS)
5356
simpft_LDADD = \
5457
$(top_builddir)/src/libpmix.la
5558

56-
simpdyn_SOURCES = \
59+
simpdyn_SOURCES = $(headers) \
5760
simpdyn.c
5861
simpdyn_LDFLAGS = $(PMIX_PKG_CONFIG_LDFLAGS)
5962
simpdyn_LDADD = \
6063
$(top_builddir)/src/libpmix.la
6164

62-
test_pmix_SOURCES = \
65+
test_pmix_SOURCES = $(headers) \
6366
test_pmix.c
6467
test_pmix_LDFLAGS = $(PMIX_PKG_CONFIG_LDFLAGS)
6568
test_pmix_LDADD = \
6669
$(top_builddir)/src/libpmix.la
6770

68-
simptool_SOURCES = \
71+
simptool_SOURCES = $(headers) \
6972
simptool.c
7073
simptool_LDFLAGS = $(PMIX_PKG_CONFIG_LDFLAGS)
7174
simptool_LDADD = \
7275
$(top_builddir)/src/libpmix.la
7376

74-
simpdie_SOURCES = \
77+
simpdie_SOURCES = $(headers) \
7578
simpdie.c
7679
simpdie_LDFLAGS = $(PMIX_PKG_CONFIG_LDFLAGS)
7780
simpdie_LDADD = \
7881
$(top_builddir)/src/libpmix.la
7982

80-
simplegacy_SOURCES = \
83+
simplegacy_SOURCES = $(headers) \
8184
simplegacy.c
8285
simplegacy_LDFLAGS = $(PMIX_PKG_CONFIG_LDFLAGS)
8386
simplegacy_LDADD = \
8487
$(top_builddir)/src/libpmix.la
88+
89+
stability_SOURCES = $(headers) \
90+
stability.c
91+
stability_LDFLAGS = $(PMIX_PKG_CONFIG_LDFLAGS)
92+
stability_LDADD = \
93+
$(top_builddir)/src/libpmix.la
94+
95+
quietclient_SOURCES = $(headers) \
96+
quietclient.c
97+
quietclient_LDFLAGS = $(PMIX_PKG_CONFIG_LDFLAGS)
98+
quietclient_LDADD = \
99+
$(top_builddir)/src/libpmix.la

0 commit comments

Comments
 (0)