Skip to content

Commit 8087147

Browse files
authored
Merge pull request #6885 from rhc54/cmr40/pmix314
Update PMIx to official v3.1.4 release
2 parents cb3ed47 + 167ca31 commit 8087147

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

74 files changed

+2970
-1054
lines changed

opal/mca/pmix/pmix3x/pmix/NEWS

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,28 @@ example, a bug might be fixed in the master, and then moved to
2121
multiple release branches.
2222

2323

24+
3.1.4 -- 9 Aug 2019
25+
----------------------
26+
- PR #1342: Fix if_linux_ipv6_open interface filter
27+
- PR #1344: Remove unnecessary libtool init for c++
28+
- PR #1346: Fix incorrect pointer casts/deref
29+
- PR #1347/#1348: Fix use of gethostname
30+
- PR #1353/#1357: util/environ: use setenv() if available
31+
- PR #1354: Plug a misc memory leak in the pmix_query_caddy_t destructor
32+
- PR #1356: Fix another pointer cast/deref in test suite
33+
- PR #1358: Implement support for class-based info arrays
34+
- PR #1359: Plug misc minor memory leaks
35+
- PR #1368: Backport support for libev
36+
- PR #1369: Fix legacy support for PMI-1
37+
- PR #1370: Cleanup handling of data requests for different nspaces
38+
- PR #1193: Resolve get of proc-specific job-level info from another nspace
39+
- PR #1376: Fix problems in the Log code path, updates to simple test suite
40+
- PR #1377: Skip fastpath/dstore for NULL keys
41+
- PR #1379: Change IF_NAMESIZE to PMIX_IF_NAMESIZE and set to safe size
42+
- PR #1385: Check for EINVAL return from posix_fallocate
43+
- PR #1389: Plug misc memory leaks in configure
44+
45+
2446
3.1.3 -- 2 July 2019
2547
----------------------
2648
- PR #1096: Restore PMIX_NUM_SLOTS for backward compatibility
@@ -120,6 +142,45 @@ multiple release branches.
120142
- Fix a bug when registering default event handlers
121143

122144

145+
3.1.0 -- 17 Jan 2019
146+
----------------------
147+
**** THIS RELEASE MARKS THE STARTING POINT FOR FULL COMPLIANCE
148+
**** WITH THE PMIX v3 STANDARD. ALL API BEHAVIORS AND ATTRIBUTE
149+
**** DEFINITIONS MEET THE v3 STANDARD SPECIFICATIONS.
150+
- Add a new, faster dstore GDS component 'ds21'
151+
- Performance optimizations for the dstore GDS components.
152+
- Plug miscellaneous memory leaks
153+
- Silence an unnecessary warning message when checking connection
154+
to a non-supporting server
155+
- Ensure lost-connection events get delivered to default event
156+
handlers
157+
- Correctly handle cache refresh for queries
158+
- Protect against race conditions between host and internal library
159+
when dealing with async requests
160+
- Cleanup tool operations and add support for connections to
161+
remote servers. Initial support for debugger direct/indirect
162+
launch verified with PRRTE. Cleanup setting of tmpdir options.
163+
Drop rendezvous files when acting as a launcher
164+
- Automatically store the server URI for easy access by client
165+
- Provide MCA parameter to control TCP connect retry/timeout
166+
- Update event notification system to properly evict oldest events
167+
when more space is needed
168+
- Fix a number of error paths
169+
- Update IOF cache code to properly drop oldest message. Provide
170+
MCA parameter for setting cache size.
171+
- Handle setsockopt(SO_RCVTIMEO) not being supported
172+
- Ensure that epilogs get run even when connections unexpectedly
173+
terminate. Properly split epilog strings to process multiple
174+
paths
175+
- Pass the tool's command line to the server so it can be returned
176+
in queries
177+
- Add support for C11 atomics
178+
- Support collection and forwarding of fabric-specific envars
179+
- Improve handling of hwloc configure option
180+
- Fix PMIx_server_generate_regex to preserve node ordering
181+
- Fix a bug when registering default event handlers
182+
183+
123184
3.0.2 -- 18 Sept 2018
124185
----------------------
125186
- Ensure we cleanup any active sensors when a peer departs. Allow the

opal/mca/pmix/pmix3x/pmix/VERSION

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515

1616
major=3
1717
minor=1
18-
release=3
18+
release=4
1919

2020
# greek is used for alpha or beta release tags. If it is non-empty,
2121
# it will be appended to the version number. It does not have to be
@@ -30,7 +30,7 @@ greek=
3030
# command, or with the date (if "git describe" fails) in the form of
3131
# "date<date>".
3232

33-
repo_rev=gitc10fd1d4
33+
repo_rev=gite6837057
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="Jul 02, 2019"
47+
date="Aug 09, 2019"
4848

4949
# The shared library version of each of PMIx's public libraries.
5050
# These versions are maintained in accordance with the "Library
@@ -75,13 +75,13 @@ date="Jul 02, 2019"
7575
# Version numbers are described in the Libtool current:revision:age
7676
# format.
7777

78-
libpmix_so_version=4:23:2
79-
libpmi_so_version=1:0:0
78+
libpmix_so_version=4:24:2
79+
libpmi_so_version=1:1:0
8080
libpmi2_so_version=1:0:0
8181

8282
# "Common" components install standalone libraries that are run-time
8383
# # linked by one or more components. So they need to be versioned as
8484
# # well. Yuck; this somewhat breaks the
8585
# # components-don't-affect-the-build-system abstraction.
8686
#
87-
libmca_common_dstore_so_version=1:0:0
87+
libmca_common_dstore_so_version=1:1:0

opal/mca/pmix/pmix3x/pmix/config/c_get_alignment.m4

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ dnl University of Stuttgart. All rights reserved.
1111
dnl Copyright (c) 2004-2005 The Regents of the University of California.
1212
dnl All rights reserved.
1313
dnl Copyright (c) 2009 Sun Microsystems, Inc. All rights reserved.
14-
dnl Copyright (c) 2014-2015 Intel, Inc. All rights reserved.
15-
dnl Copyright (c) 2015 Research Organization for Information Science
16-
dnl and Technology (RIST). All rights reserved.
14+
dnl Copyright (c) 2014-2019 Intel, Inc. All rights reserved.
15+
dnl Copyright (c) 2015-2019 Research Organization for Information Science
16+
dnl and Technology (RIST). All rights reserved.
1717
dnl $COPYRIGHT$
1818
dnl
1919
dnl Additional copyrights may follow
@@ -44,7 +44,9 @@ AC_DEFUN([PMIX_C_GET_ALIGNMENT],[
4444
FILE *f=fopen("conftestval", "w");
4545
if (!f) exit(1);
4646
diff = ((char *)&p->x) - ((char *)&p->c);
47+
free(p);
4748
fprintf(f, "%d\n", (diff >= 0) ? diff : -diff);
49+
fclose(f);
4850
]])], [AS_TR_SH([pmix_cv_c_align_$1])=`cat conftestval`],
4951
[AC_MSG_WARN([*** Problem running configure test!])
5052
AC_MSG_WARN([*** See config.log for details.])

opal/mca/pmix/pmix3x/pmix/config/pmix.m4

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -663,7 +663,7 @@ AC_DEFUN([PMIX_SETUP_CORE],[
663663
# -lrt might be needed for clock_gettime
664664
PMIX_SEARCH_LIBS_CORE([clock_gettime], [rt])
665665

666-
AC_CHECK_FUNCS([asprintf snprintf vasprintf vsnprintf strsignal socketpair strncpy_s usleep statfs statvfs getpeereid getpeerucred strnlen posix_fallocate tcgetpgrp])
666+
AC_CHECK_FUNCS([asprintf snprintf vasprintf vsnprintf strsignal socketpair strncpy_s usleep statfs statvfs getpeereid getpeerucred strnlen posix_fallocate tcgetpgrp setpgid ptsname openpty setenv])
667667

668668
# On some hosts, htonl is a define, so the AC_CHECK_FUNC will get
669669
# confused. On others, it's in the standard library, but stubbed with
@@ -754,8 +754,22 @@ AC_DEFUN([PMIX_SETUP_CORE],[
754754
##################################
755755
pmix_show_title "Libevent"
756756

757+
PMIX_LIBEV_CONFIG
757758
PMIX_LIBEVENT_CONFIG
758759

760+
AS_IF([test $pmix_libevent_support -eq 1 && test $pmix_libev_support -eq 1],
761+
[AC_MSG_WARN([Both libevent and libev support have been specified.])
762+
AC_MSG_WARN([Only one can be configured against at a time. Please])
763+
AC_MSG_WARN([remove one from the configure command line.])
764+
AC_MSG_ERROR([Cannot continue])])
765+
766+
AS_IF([test $pmix_libevent_support -eq 0 && test $pmix_libev_support -eq 0],
767+
[AC_MSG_WARN([Either libevent or libev support is required, but neither])
768+
AC_MSG_WARN([was found. Please use the configure options to point us])
769+
AC_MSG_WARN([to where we can find one or the other library])
770+
AC_MSG_ERROR([Cannot continue])])
771+
772+
759773
##################################
760774
# HWLOC
761775
##################################

opal/mca/pmix/pmix3x/pmix/config/pmix_check_compiler_version.m4

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
dnl -*- shell-script -*-
22
dnl
33
dnl Copyright (c) 2009 Oak Ridge National Labs. All rights reserved.
4-
dnl Copyright (c) 2013-2017 Intel, Inc. All rights reserved.
4+
dnl Copyright (c) 2013-2019 Intel, Inc. All rights reserved.
5+
dnl Copyright (c) 2019 Research Organization for Information Science
6+
dnl and Technology (RIST). All rights reserved.
57
dnl
68
dnl $COPYRIGHT$
79
dnl
@@ -43,6 +45,7 @@ int main (int argc, char * argv[])
4345
f=fopen("conftestval", "w");
4446
if (!f) exit(1);
4547
fprintf (f, "%d", PLATFORM_COMPILER_$1);
48+
fclose(f);
4649
return 0;
4750
}
4851
], [
@@ -75,6 +78,7 @@ int main (int argc, char * argv[])
7578
f=fopen("conftestval", "w");
7679
if (!f) exit(1);
7780
fprintf (f, "%s", PLATFORM_COMPILER_$1);
81+
fclose(f);
7882
return 0;
7983
}
8084
], [
@@ -110,6 +114,7 @@ int main (int argc, char * argv[])
110114
f=fopen("conftestval", "w");
111115
if (!f) exit(1);
112116
fprintf (f, "%s", _STRINGIFY(PLATFORM_COMPILER_$1));
117+
fclose(f);
113118
return 0;
114119
}
115120
], [

opal/mca/pmix/pmix3x/pmix/config/pmix_check_icc.m4

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@ dnl Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
1010
dnl University of Stuttgart. All rights reserved.
1111
dnl Copyright (c) 2004-2005 The Regents of the University of California.
1212
dnl All rights reserved.
13-
dnl Copyright (c) 2014 Intel, Inc. All rights reserved.
14-
dnl Copyright (c) 2016 Research Organization for Information Science
15-
dnl and Technology (RIST). All rights reserved.
13+
dnl Copyright (c) 2014-2019 Intel, Inc. All rights reserved.
14+
dnl Copyright (c) 2016-2019 Research Organization for Information Science
15+
dnl and Technology (RIST). All rights reserved.
1616
dnl $COPYRIGHT$
1717
dnl
1818
dnl Additional copyrights may follow
@@ -45,6 +45,7 @@ int main ()
4545
func (4711, "Help %d [%s]\n", 10, "ten");
4646
f=fopen ("conftestval", "w");
4747
if (!f) exit (1);
48+
fclose(f);
4849
return 0;
4950
}
5051

Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
# -*- shell-script -*-
2+
#
3+
# Copyright (c) 2009-2015 Cisco Systems, Inc. All rights reserved.
4+
# Copyright (c) 2013 Los Alamos National Security, LLC. All rights reserved.
5+
# Copyright (c) 2013-2019 Intel, Inc. All rights reserved.
6+
# Copyright (c) 2017-2019 Research Organization for Information Science
7+
# and Technology (RIST). All rights reserved.
8+
# $COPYRIGHT$
9+
#
10+
# Additional copyrights may follow
11+
#
12+
# $HEADER$
13+
#
14+
15+
# MCA_libev_CONFIG([action-if-found], [action-if-not-found])
16+
# --------------------------------------------------------------------
17+
AC_DEFUN([PMIX_LIBEV_CONFIG],[
18+
PMIX_VAR_SCOPE_PUSH([pmix_libev_dir pmix_libev_libdir pmix_libev_standard_header_location pmix_libev_standard_lib_location])
19+
20+
AC_ARG_WITH([libev],
21+
[AC_HELP_STRING([--with-libev=DIR],
22+
[Search for libev headers and libraries in DIR ])])
23+
PMIX_CHECK_WITHDIR([libev], [$with_libev], [include/event.h])
24+
25+
AC_ARG_WITH([libev-libdir],
26+
[AC_HELP_STRING([--with-libev-libdir=DIR],
27+
[Search for libev libraries in DIR ])])
28+
PMIX_CHECK_WITHDIR([libev-libdir], [$with_livev_libdir], [libev.*])
29+
30+
pmix_libev_support=0
31+
32+
AS_IF([test -n "$with_libev" && test "$with_libev" != "no"],
33+
[AC_MSG_CHECKING([for libev in])
34+
pmix_check_libev_save_CPPFLAGS="$CPPFLAGS"
35+
pmix_check_libeve_save_LDFLAGS="$LDFLAGS"
36+
pmix_check_libev_save_LIBS="$LIBS"
37+
if test "$with_libev" != "yes"; then
38+
pmix_libev_dir=$with_libev/include
39+
pmix_libev_standard_header_location=no
40+
pmix_libev_standard_lib_location=no
41+
AS_IF([test -z "$with_libev_libdir" || test "$with_libev_libdir" = "yes"],
42+
[if test -d $with_libev/lib; then
43+
pmix_libev_libdir=$with_libev/lib
44+
elif test -d $with_libev/lib64; then
45+
pmix_libev_libdir=$with_libev/lib64
46+
else
47+
AC_MSG_RESULT([Could not find $with_libev/lib or $with_libev/lib64])
48+
AC_MSG_ERROR([Can not continue])
49+
fi
50+
AC_MSG_RESULT([$pmix_libev_dir and $pmix_libev_libdir])],
51+
[AC_MSG_RESULT([$with_libev_libdir])])
52+
else
53+
AC_MSG_RESULT([(default search paths)])
54+
pmix_libev_standard_header_location=yes
55+
pmix_libev_standard_lib_location=yes
56+
fi
57+
AS_IF([test ! -z "$with_libev_libdir" && test "$with_libev_libdir" != "yes"],
58+
[pmix_libev_libdir="$with_libev_libdir"
59+
pmix_libev_standard_lib_location=no])
60+
61+
PMIX_CHECK_PACKAGE([pmix_libev],
62+
[event.h],
63+
[ev],
64+
[event_base_new],
65+
[],
66+
[$pmix_libev_dir],
67+
[$pmix_libev_libdir],
68+
[pmix_libev_support=1],
69+
[pmix_libev_support=0])
70+
CPPFLAGS="$pmix_check_libev_save_CPPFLAGS"
71+
LDFLAGS="$pmix_check_libev_save_LDFLAGS"
72+
LIBS="$pmix_check_libev_save_LIBS"])
73+
74+
AS_IF([test $pmix_libev_support -eq 1],
75+
[LIBS="$LIBS $pmix_libev_LIBS"
76+
77+
AS_IF([test "$pmix_libev_standard_header_location" != "yes"],
78+
[CPPFLAGS="$CPPFLAGS $pmix_libev_CPPFLAGS"])
79+
AS_IF([test "$pmix_libev_standard_lib_location" != "yes"],
80+
[LDFLAGS="$LDFLAGS $pmix_libev_LDFLAGS"])])
81+
82+
AC_MSG_CHECKING([will libev support be built])
83+
if test $pmix_libev_support -eq 1; then
84+
AC_MSG_RESULT([yes])
85+
PMIX_EVENT_HEADER="<event.h>"
86+
AC_DEFINE_UNQUOTED([PMIX_EVENT_HEADER], [$PMIX_EVENT_HEADER],
87+
[Location of event.h])
88+
PMIX_SUMMARY_ADD([[External Packages]],[[libev]],[libev],[$pmix_libev_dir])
89+
else
90+
AC_MSG_RESULT([no])
91+
fi
92+
93+
AC_DEFINE_UNQUOTED([PMIX_HAVE_LIBEV], [$pmix_libev_support], [Whether we are building against libev])
94+
95+
PMIX_VAR_SCOPE_POP
96+
])dnl

0 commit comments

Comments
 (0)