1
1

Merge pull request #1681 from rhc54/topic/pmixupdate

Update PMIx 114 to current release candidate
Этот коммит содержится в:
rhc54 2016-05-19 13:50:16 -07:00
родитель 110755be37 6f743f81b6
Коммит 99d3c283f5
51 изменённых файлов: 1241 добавлений и 572 удалений

Просмотреть файл

@ -30,7 +30,7 @@ greek=rc2
# command, or with the date (if "git describe" fails) in the form of
# "date<date>".
repo_rev=gitd9fd3da
repo_rev=git65d985c
# If tarball_version is not empty, it is used as the version string in
# the tarball filename, regardless of all other versions listed in
@ -44,7 +44,7 @@ tarball_version=
# The date when this release was created
date="Apr 16, 2016"
date="May 19, 2016"
# The shared library version of each of PMIx's public libraries.
# These versions are maintained in accordance with the "Library

Просмотреть файл

@ -22,6 +22,7 @@ dnl Copyright (c) 2015 Research Organization for Information Science
dnl and Technology (RIST). All rights reserved.
dnl Copyright (c) 2016 Mellanox Technologies, Inc.
dnl All rights reserved.
dnl Copyright (c) 2016 IBM Corporation. All rights reserved.
dnl
dnl $COPYRIGHT$
dnl
@ -84,6 +85,34 @@ AC_DEFUN([PMIX_SETUP_CORE],[
AC_SUBST(PMIX_RELEASE_DATE)
AC_MSG_RESULT([$PMIX_VERSION])
# Save the breakdown the version information
AC_MSG_CHECKING([for pmix major version])
PMIX_MAJOR_VERSION="`$PMIX_top_srcdir/config/pmix_get_version.sh $PMIX_top_srcdir/VERSION --major`"
if test "$?" != "0"; then
AC_MSG_ERROR([Cannot continue])
fi
AC_SUBST(PMIX_MAJOR_VERSION)
AC_DEFINE_UNQUOTED([PMIX_MAJOR_VERSION], ["$PMIX_MAJOR_VERSION"],
[The library major version is always available, contrary to VERSION])
AC_MSG_CHECKING([for pmix minor version])
PMIX_MINOR_VERSION="`$PMIX_top_srcdir/config/pmix_get_version.sh $PMIX_top_srcdir/VERSION --minor`"
if test "$?" != "0"; then
AC_MSG_ERROR([Cannot continue])
fi
AC_SUBST(PMIX_MINOR_VERSION)
AC_DEFINE_UNQUOTED([PMIX_MINOR_VERSION], ["$PMIX_MINOR_VERSION"],
[The library minor version is always available, contrary to VERSION])
AC_MSG_CHECKING([for pmix release version])
PMIX_RELEASE_VERSION="`$PMIX_top_srcdir/config/pmix_get_version.sh $PMIX_top_srcdir/VERSION --release`"
if test "$?" != "0"; then
AC_MSG_ERROR([Cannot continue])
fi
AC_SUBST(PMIX_RELEASE_VERSION)
AC_DEFINE_UNQUOTED([PMIX_RELEASE_VERSION], ["$PMIX_RELEASE_VERSION"],
[The library release version is always available, contrary to VERSION])
# Debug mode?
AC_MSG_CHECKING([if want pmix maintainer support])
pmix_debug=
@ -101,11 +130,6 @@ AC_DEFUN([PMIX_SETUP_CORE],[
AC_MSG_CHECKING([for pmix directory prefix])
AC_MSG_RESULT(m4_ifval([$1], pmix_config_prefix, [(none)]))
# Note that private/config.h *MUST* be listed first so that it
# becomes the "main" config header file. Any AC-CONFIG-HEADERS
# after that (pmix/config.h) will only have selective #defines
# replaced, not the entire file.
AC_CONFIG_HEADERS(pmix_config_prefix[src/include/private/autogen/config.h])
AC_CONFIG_HEADERS(pmix_config_prefix[include/pmix/autogen/config.h])
# What prefix are we using?

Просмотреть файл

@ -20,6 +20,7 @@
# Copyright (c) 2013 Mellanox Technologies, Inc.
# All rights reserved.
# Copyright (c) 2014-2015 Intel, Inc. All rights reserved
# Copyright (c) 2016 IBM Corporation. All rights reserved.
# $COPYRIGHT$
#
# Additional copyrights may follow
@ -88,6 +89,7 @@ AH_TOP([/* -*- c -*-
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2013-2015 Intel, Inc. All rights reserved
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow

Просмотреть файл

@ -21,7 +21,7 @@
AM_CPPFLAGS = -I$(top_builddir)/src -I$(top_builddir)/src/include -I$(top_builddir)/src/api
noinst_PROGRAMS = client dmodex dynamic fault pub server
noinst_PROGRAMS = client dmodex dynamic fault pub
client_SOURCES = client.c
client_LDFLAGS = $(PMIX_PKG_CONFIG_LDFLAGS)
@ -43,9 +43,5 @@ pub_SOURCES = pub.c
pub_LDFLAGS = $(PMIX_PKG_CONFIG_LDFLAGS)
pub_LDADD = $(top_builddir)/libpmix.la
server_SOURCES = pub.c
server_LDFLAGS = $(PMIX_PKG_CONFIG_LDFLAGS)
server_LDADD = $(top_builddir)/libpmix.la
distclean-local:
rm -f *.o client dmodex dynamic fault pub server

Просмотреть файл

@ -1,5 +1,6 @@
#
# Copyright 2015-2016 Intel, Inc. All rights reserved
# Copyright (c) 2016 IBM Corporation. All rights reserved.
#
# $COPYRIGHT$
#
@ -26,7 +27,8 @@ include_pmix_HEADERS = \
include_pmix_autogendir = $(includedir)/pmix/autogen
include_pmix_autogen_HEADERS = \
include/pmix/autogen/pmix_config_top.h \
include/pmix/autogen/pmix_config_bottom.h
include/pmix/autogen/pmix_config_bottom.h \
include/pmix/autogen/pmix_stdint.h
nodist_include_pmix_autogen_HEADERS = \
include/pmix/autogen/config.h

Просмотреть файл

@ -1,177 +1,526 @@
/* include/pmix/autogen/config.h.in. Generated from configure.ac by autoheader. */
/* -*- c -*-
* Copyright © 2009 CNRS
* Copyright © 2009-2014 Inria. All rights reserved.
* Copyright © 2009-2012 Université Bordeaux
* Copyright © 2009-2011 Cisco Systems, Inc. All rights reserved.
* See COPYING in top-level directory.
*
* Copyright (c) 2004-2005 The Trustees of Indiana University.
* All rights reserved.
* Copyright (c) 2004-2005 The Trustees of the University of Tennessee.
* All rights reserved.
* Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
* University of Stuttgart. All rights reserved.
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2013-2015 Intel, Inc. All rights reserved
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
*
* $HEADER$
*
* This file is automatically generated by configure. Edits will be lost
* the next time you run configure!
*/
/* The configuration file */
#ifndef PMIX_CONFIG_H
#define PMIX_CONFIG_H
#ifndef PMIX_PUBLIC_CONFIG_H
#define PMIX_PUBLIC_CONFIG_H
#include <pmix/autogen/pmix_config_top.h>
#if (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95))
# define __pmix_restrict __restrict
#else
# if __STDC_VERSION__ >= 199901L
# define __pmix_restrict restrict
# else
# define __pmix_restrict
# endif
#endif
/* Note that if we're compiling C++, then just use the "inline"
keyword, since it's part of C++ */
#if defined(c_plusplus) || defined(__cplusplus)
# define __pmix_inline inline
#elif defined(_MSC_VER) || defined(__HP_cc)
# define __pmix_inline __inline
#else
# define __pmix_inline __inline__
#endif
/*
* Note: this is public. We can not assume anything from the compiler used
* by the application and thus the PMIX_HAVE_* macros below are not
* fetched from the autoconf result here. We only automatically use a few
* well-known easy cases.
*/
/* Define if building universal (internal helper macro) */
#undef AC_APPLE_UNIVERSAL_BUILD
/* Some handy constants to make the logic below a little more readable */
#if defined(__cplusplus) && \
(__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR >= 4))
#define GXX_ABOVE_3_4 1
#else
#define GXX_ABOVE_3_4 0
#endif
/* Define to 1 if you have the <arpa/inet.h> header file. */
#undef HAVE_ARPA_INET_H
#if !defined(__cplusplus) && \
(__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95))
#define GCC_ABOVE_2_95 1
#else
#define GCC_ABOVE_2_95 0
#endif
/* Define to 1 if you have the `asprintf' function. */
#undef HAVE_ASPRINTF
#if !defined(__cplusplus) && \
(__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96))
#define GCC_ABOVE_2_96 1
#else
#define GCC_ABOVE_2_96 0
#endif
/* Define to 1 if you have the <crt_externs.h> header file. */
#undef HAVE_CRT_EXTERNS_H
#if !defined(__cplusplus) && \
(__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3))
#define GCC_ABOVE_3_3 1
#else
#define GCC_ABOVE_3_3 0
#endif
/* Define to 1 if you have the declaration of `AF_INET6', and to 0 if you
don't. */
#undef HAVE_DECL_AF_INET6
/* Maybe before gcc 2.95 too */
#ifdef PMIX_HAVE_ATTRIBUTE_UNUSED
#define __PMIX_HAVE_ATTRIBUTE_UNUSED PMIX_HAVE_ATTRIBUTE_UNUSED
#elif defined(__GNUC__)
# define __PMIX_HAVE_ATTRIBUTE_UNUSED (GXX_ABOVE_3_4 || GCC_ABOVE_2_95)
#else
# define __PMIX_HAVE_ATTRIBUTE_UNUSED 0
#endif
#if __PMIX_HAVE_ATTRIBUTE_UNUSED
# define __pmix_attribute_unused __attribute__((__unused__))
#else
# define __pmix_attribute_unused
#endif
/* Define to 1 if you have the declaration of `AF_UNSPEC', and to 0 if you
don't. */
#undef HAVE_DECL_AF_UNSPEC
#ifdef PMIX_HAVE_ATTRIBUTE_MALLOC
#define __PMIX_HAVE_ATTRIBUTE_MALLOC PMIX_HAVE_ATTRIBUTE_MALLOC
#elif defined(__GNUC__)
# define __PMIX_HAVE_ATTRIBUTE_MALLOC (GXX_ABOVE_3_4 || GCC_ABOVE_2_96)
#else
# define __PMIX_HAVE_ATTRIBUTE_MALLOC 0
#endif
#if __PMIX_HAVE_ATTRIBUTE_MALLOC
# define __pmix_attribute_malloc __attribute__((__malloc__))
#else
# define __pmix_attribute_malloc
#endif
/* Define to 1 if you have the declaration of `PF_INET6', and to 0 if you
don't. */
#undef HAVE_DECL_PF_INET6
#ifdef PMIX_HAVE_ATTRIBUTE_CONST
#define __PMIX_HAVE_ATTRIBUTE_CONST PMIX_HAVE_ATTRIBUTE_CONST
#elif defined(__GNUC__)
# define __PMIX_HAVE_ATTRIBUTE_CONST (GXX_ABOVE_3_4 || GCC_ABOVE_2_95)
#else
# define __PMIX_HAVE_ATTRIBUTE_CONST 0
#endif
#if __PMIX_HAVE_ATTRIBUTE_CONST
# define __pmix_attribute_const __attribute__((__const__))
#else
# define __pmix_attribute_const
#endif
/* Define to 1 if you have the declaration of `PF_UNSPEC', and to 0 if you
don't. */
#undef HAVE_DECL_PF_UNSPEC
#ifdef PMIX_HAVE_ATTRIBUTE_PURE
#define __PMIX_HAVE_ATTRIBUTE_PURE PMIX_HAVE_ATTRIBUTE_PURE
#elif defined(__GNUC__)
# define __PMIX_HAVE_ATTRIBUTE_PURE (GXX_ABOVE_3_4 || GCC_ABOVE_2_96)
#else
# define __PMIX_HAVE_ATTRIBUTE_PURE 0
#endif
#if __PMIX_HAVE_ATTRIBUTE_PURE
# define __pmix_attribute_pure __attribute__((__pure__))
#else
# define __pmix_attribute_pure
#endif
/* Define to 1 if you have the declaration of `__func__', and to 0 if you
don't. */
#undef HAVE_DECL___FUNC__
#ifdef PMIX_HAVE_ATTRIBUTE_DEPRECATED
#define __PMIX_HAVE_ATTRIBUTE_DEPRECATED PMIX_HAVE_ATTRIBUTE_DEPRECATED
#elif defined(__GNUC__)
# define __PMIX_HAVE_ATTRIBUTE_DEPRECATED (GXX_ABOVE_3_4 || GCC_ABOVE_3_3)
#else
# define __PMIX_HAVE_ATTRIBUTE_DEPRECATED 0
#endif
#if __PMIX_HAVE_ATTRIBUTE_DEPRECATED
# define __pmix_attribute_deprecated __attribute__((__deprecated__))
#else
# define __pmix_attribute_deprecated
#endif
/* Define to 1 if you have the <dlfcn.h> header file. */
#undef HAVE_DLFCN_H
#ifdef PMIX_HAVE_ATTRIBUTE_MAY_ALIAS
#define __PMIX_HAVE_ATTRIBUTE_MAY_ALIAS PMIX_HAVE_ATTRIBUTE_MAY_ALIAS
#elif defined(__GNUC__)
# define __PMIX_HAVE_ATTRIBUTE_MAY_ALIAS (GXX_ABOVE_3_4 || GCC_ABOVE_3_3)
#else
# define __PMIX_HAVE_ATTRIBUTE_MAY_ALIAS 0
#endif
#if __PMIX_HAVE_ATTRIBUTE_MAY_ALIAS
# define __pmix_attribute_may_alias __attribute__((__may_alias__))
#else
# define __pmix_attribute_may_alias
#endif
/* Define to 1 if you have the <event.h> header file. */
#undef HAVE_EVENT_H
#ifndef PMIX_DECLSPEC
# define PMIX_DECLSPEC
#ifdef PMIX_C_HAVE_VISIBILITY
# if PMIX_C_HAVE_VISIBILITY
# define PMIX_EXPORT __attribute__((__visibility__("default")))
# else
# define PMIX_EXPORT
# endif
#else
# define PMIX_EXPORT
#endif
#endif
/* Define to 1 if you have the <fcntl.h> header file. */
#undef HAVE_FCNTL_H
/* Defined to 1 on Linux */
#undef PMIX_LINUX_SYS
/* Define to 1 if you have the <hostLib.h> header file. */
#undef HAVE_HOSTLIB_H
/* Defined to 1 if the CPU_SET macro works */
#undef PMIX_HAVE_CPU_SET
/* Define to 1 if you have the <hwloc.h> header file. */
#undef HAVE_HWLOC_H
/* Defined to 1 if you have the `windows.h' header. */
#undef PMIX_HAVE_WINDOWS_H
#undef pmix_pid_t
#undef pmix_thread_t
/* Define to 1 if the system has the type `int16_t'. */
#undef HAVE_INT16_T
/* Whether we need to re-define all the pmix public symbols or not */
#undef PMIX_SYM_TRANSFORM
/* Define to 1 if the system has the type `int32_t'. */
#undef HAVE_INT32_T
/* Define to 1 if the system has the type `int64_t'. */
#undef HAVE_INT64_T
/* Define to 1 if the system has the type `int8_t'. */
#undef HAVE_INT8_T
/* Define to 1 if the system has the type `intptr_t'. */
#undef HAVE_INTPTR_T
/* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
/* Define to 1 if you have the <ioLib.h> header file. */
#undef HAVE_IOLIB_H
/* Define to 1 if you have the `event' library (-levent). */
#undef HAVE_LIBEVENT
/* Define to 1 if you have the `libevent_global_shutdown' function. */
#undef HAVE_LIBEVENT_GLOBAL_SHUTDOWN
/* Define to 1 if you have the `event_pthreads' library (-levent_pthreads). */
#undef HAVE_LIBEVENT_PTHREADS
/* Define to 1 if you have the <libgen.h> header file. */
#undef HAVE_LIBGEN_H
/* Define to 1 if you have the <limits.h> header file. */
#undef HAVE_LIMITS_H
/* Define to 1 if the system has the type `long long'. */
#undef HAVE_LONG_LONG
/* Define to 1 if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H
/* Define to 1 if you have the <munge.h> header file. */
#undef HAVE_MUNGE_H
/* Define to 1 if you have the <netinet/in.h> header file. */
#undef HAVE_NETINET_IN_H
/* Define to 1 if you have the <net/uio.h> header file. */
#undef HAVE_NET_UIO_H
/* Define to 1 if the system has the type `ptrdiff_t'. */
#undef HAVE_PTRDIFF_T
/* Define to 1 if you have the <sasl/sasl.h> header file. */
#undef HAVE_SASL_SASL_H
/* Define to 1 if `si_band' is a member of `siginfo_t'. */
#undef HAVE_SIGINFO_T_SI_BAND
/* Define to 1 if `si_fd' is a member of `siginfo_t'. */
#undef HAVE_SIGINFO_T_SI_FD
/* Define to 1 if you have the <signal.h> header file. */
#undef HAVE_SIGNAL_H
/* Define to 1 if you have the `snprintf' function. */
#undef HAVE_SNPRINTF
/* Define to 1 if you have the `socketpair' function. */
#undef HAVE_SOCKETPAIR
/* Define to 1 if the system has the type `socklen_t'. */
#undef HAVE_SOCKLEN_T
/* Define to 1 if you have the <sockLib.h> header file. */
#undef HAVE_SOCKLIB_H
/* Define to 1 if you have the <stdarg.h> header file. */
#undef HAVE_STDARG_H
/* Define to 1 if you have the <stdbool.h> header file. */
#undef HAVE_STDBOOL_H
/* Define to 1 if you have the <stddef.h> header file. */
#undef HAVE_STDDEF_H
/* Define to 1 if you have the <stdint.h> header file. */
#undef HAVE_STDINT_H
/* Define to 1 if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H
/* Define to 1 if you have the <strings.h> header file. */
#undef HAVE_STRINGS_H
/* Define to 1 if you have the <string.h> header file. */
#undef HAVE_STRING_H
/* Define to 1 if you have the `strncpy_s' function. */
#undef HAVE_STRNCPY_S
/* Define to 1 if you have the `strsignal' function. */
#undef HAVE_STRSIGNAL
/* Define to 1 if `d_type' is a member of `struct dirent'. */
#undef HAVE_STRUCT_DIRENT_D_TYPE
/* Define to 1 if the system has the type `struct sockaddr_in'. */
#undef HAVE_STRUCT_SOCKADDR_IN
/* Define to 1 if the system has the type `struct sockaddr_in6'. */
#undef HAVE_STRUCT_SOCKADDR_IN6
/* Define to 1 if `sa_len' is a member of `struct sockaddr'. */
#undef HAVE_STRUCT_SOCKADDR_SA_LEN
/* Define to 1 if the system has the type `struct sockaddr_storage'. */
#undef HAVE_STRUCT_SOCKADDR_STORAGE
/* Define to 1 if the system has the type `struct sockaddr_un'. */
#undef HAVE_STRUCT_SOCKADDR_UN
/* Define to 1 if `f_fstypename' is a member of `struct statfs'. */
#undef HAVE_STRUCT_STATFS_F_FSTYPENAME
/* Define to 1 if `f_type' is a member of `struct statfs'. */
#undef HAVE_STRUCT_STATFS_F_TYPE
/* Define to 1 if `f_basetype' is a member of `struct statvfs'. */
#undef HAVE_STRUCT_STATVFS_F_BASETYPE
/* Define to 1 if `f_fstypename' is a member of `struct statvfs'. */
#undef HAVE_STRUCT_STATVFS_F_FSTYPENAME
/* Define to 1 if you have the <syslog.h> header file. */
#undef HAVE_SYSLOG_H
/* Define to 1 if you have the <sys/param.h> header file. */
#undef HAVE_SYS_PARAM_H
/* Define to 1 if you have the <sys/select.h> header file. */
#undef HAVE_SYS_SELECT_H
/* Define to 1 if you have the <sys/socket.h> header file. */
#undef HAVE_SYS_SOCKET_H
/* Define to 1 if you have the <sys/stat.h> header file. */
#undef HAVE_SYS_STAT_H
/* Define to 1 if you have the <sys/time.h> header file. */
#undef HAVE_SYS_TIME_H
/* Define to 1 if you have the <sys/types.h> header file. */
#undef HAVE_SYS_TYPES_H
/* Define to 1 if you have the <sys/uio.h> header file. */
#undef HAVE_SYS_UIO_H
/* Define to 1 if you have the <sys/un.h> header file. */
#undef HAVE_SYS_UN_H
/* Define to 1 if you have the <sys/wait.h> header file. */
#undef HAVE_SYS_WAIT_H
/* Define to 1 if you have the <time.h> header file. */
#undef HAVE_TIME_H
/* Define to 1 if the system has the type `uint16_t'. */
#undef HAVE_UINT16_T
/* Define to 1 if the system has the type `uint32_t'. */
#undef HAVE_UINT32_T
/* Define to 1 if the system has the type `uint64_t'. */
#undef HAVE_UINT64_T
/* Define to 1 if the system has the type `uint8_t'. */
#undef HAVE_UINT8_T
/* Define to 1 if the system has the type `uintptr_t'. */
#undef HAVE_UINTPTR_T
/* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
/* whether unix byteswap routines -- htonl, htons, nothl, ntohs -- are
available */
#undef HAVE_UNIX_BYTESWAP
/* Define to 1 if you have the `usleep' function. */
#undef HAVE_USLEEP
/* Define to 1 if you have the `vasprintf' function. */
#undef HAVE_VASPRINTF
/* Define to 1 if you have the `vsnprintf' function. */
#undef HAVE_VSNPRINTF
/* Define to the sub-directory where libtool stores uninstalled libraries. */
#undef LT_OBJDIR
/* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT
/* Define to the full name of this package. */
#undef PACKAGE_NAME
/* Define to the full name and version of this package. */
#undef PACKAGE_STRING
/* Define to the one symbol short name of this package. */
#undef PACKAGE_TARNAME
/* Define to the home page for this package. */
#undef PACKAGE_URL
/* Define to the version of this package. */
#undef PACKAGE_VERSION
/* Alignment of type bool */
#undef PMIX_ALIGNMENT_BOOL
/* Alignment of type char */
#undef PMIX_ALIGNMENT_CHAR
/* Alignment of type double */
#undef PMIX_ALIGNMENT_DOUBLE
/* Alignment of type float */
#undef PMIX_ALIGNMENT_FLOAT
/* Alignment of type int */
#undef PMIX_ALIGNMENT_INT
/* Alignment of type int16_t */
#undef PMIX_ALIGNMENT_INT16
/* Alignment of type int32_t */
#undef PMIX_ALIGNMENT_INT32
/* Alignment of type int64_t */
#undef PMIX_ALIGNMENT_INT64
/* Alignment of type int8_t */
#undef PMIX_ALIGNMENT_INT8
/* Alignment of type long */
#undef PMIX_ALIGNMENT_LONG
/* Alignment of type long double */
#undef PMIX_ALIGNMENT_LONG_DOUBLE
/* Alignment of type long long */
#undef PMIX_ALIGNMENT_LONG_LONG
/* Alignment of type short */
#undef PMIX_ALIGNMENT_SHORT
/* Alignment of type size_t */
#undef PMIX_ALIGNMENT_SIZE_T
/* Alignment of type void * */
#undef PMIX_ALIGNMENT_VOID_P
/* Alignment of type wchar_t */
#undef PMIX_ALIGNMENT_WCHAR
/* The compiler $lower which PMIx was built with */
#undef PMIX_BUILD_PLATFORM_COMPILER_FAMILYID
/* The compiler $lower which PMIX was built with */
#undef PMIX_BUILD_PLATFORM_COMPILER_FAMILYNAME
/* The compiler $lower which PMIx was built with */
#undef PMIX_BUILD_PLATFORM_COMPILER_VERSION
/* The compiler $lower which PMIX was built with */
#undef PMIX_BUILD_PLATFORM_COMPILER_VERSION_STR
/* PMIx underlying C compiler */
#undef PMIX_CC
/* Use static const char[] strings for C files */
#undef PMIX_CC_USE_CONST_CHAR_IDENT
/* Use #ident strings for C files */
#undef PMIX_CC_USE_IDENT
/* Use #pragma comment for C files */
#undef PMIX_CC_USE_PRAGMA_COMMENT
/* Use #pragma ident strings for C files */
#undef PMIX_CC_USE_PRAGMA_IDENT
/* Whether C compiler supports __builtin_clz */
#undef PMIX_C_HAVE_BUILTIN_CLZ
/* Whether C compiler supports __builtin_expect */
#undef PMIX_C_HAVE_BUILTIN_EXPECT
/* Whether C compiler supports __builtin_prefetch */
#undef PMIX_C_HAVE_BUILTIN_PREFETCH
/* Whether C compiler supports symbol visibility or not */
#undef PMIX_C_HAVE_VISIBILITY
/* Whether we are in debugging mode or not */
#undef PMIX_ENABLE_DEBUG
/* Whether we want developer-level timing support or not */
#undef PMIX_ENABLE_TIMING
/* Location of event2/thread.h */
#undef PMIX_EVENT2_THREAD_HEADER
/* Location of event.h */
#undef PMIX_EVENT_HEADER
/* Whether your compiler has __attribute__ or not */
#undef PMIX_HAVE_ATTRIBUTE
/* Whether your compiler has __attribute__ aligned or not */
#undef PMIX_HAVE_ATTRIBUTE_ALIGNED
/* Whether your compiler has __attribute__ always_inline or not */
#undef PMIX_HAVE_ATTRIBUTE_ALWAYS_INLINE
/* Whether your compiler has __attribute__ cold or not */
#undef PMIX_HAVE_ATTRIBUTE_COLD
/* Whether your compiler has __attribute__ const or not */
#undef PMIX_HAVE_ATTRIBUTE_CONST
/* Whether your compiler has __attribute__ deprecated or not */
#undef PMIX_HAVE_ATTRIBUTE_DEPRECATED
/* Whether your compiler has __attribute__ deprecated with optional argument
*/
#undef PMIX_HAVE_ATTRIBUTE_DEPRECATED_ARGUMENT
/* Whether your compiler has __attribute__ destructor or not */
#undef PMIX_HAVE_ATTRIBUTE_DESTRUCTOR
/* Whether your compiler has __attribute__ format or not */
#undef PMIX_HAVE_ATTRIBUTE_FORMAT
/* Whether your compiler has __attribute__ format and it works on function
pointers */
#undef PMIX_HAVE_ATTRIBUTE_FORMAT_FUNCPTR
/* Whether your compiler has __attribute__ hot or not */
#undef PMIX_HAVE_ATTRIBUTE_HOT
/* Whether your compiler has __attribute__ malloc or not */
#undef PMIX_HAVE_ATTRIBUTE_MALLOC
/* Whether your compiler has __attribute__ may_alias or not */
#undef PMIX_HAVE_ATTRIBUTE_MAY_ALIAS
/* Whether your compiler has __attribute__ nonnull or not */
#undef PMIX_HAVE_ATTRIBUTE_NONNULL
/* Whether your compiler has __attribute__ noreturn or not */
#undef PMIX_HAVE_ATTRIBUTE_NORETURN
/* Whether your compiler has __attribute__ noreturn and it works on function
pointers */
#undef PMIX_HAVE_ATTRIBUTE_NORETURN_FUNCPTR
/* Whether your compiler has __attribute__ no_instrument_function or not */
#undef PMIX_HAVE_ATTRIBUTE_NO_INSTRUMENT_FUNCTION
/* Whether your compiler has __attribute__ packed or not */
#undef PMIX_HAVE_ATTRIBUTE_PACKED
/* Whether your compiler has __attribute__ pure or not */
#undef PMIX_HAVE_ATTRIBUTE_PURE
/* Whether your compiler has __attribute__ sentinel or not */
#undef PMIX_HAVE_ATTRIBUTE_SENTINEL
/* Whether your compiler has __attribute__ unused or not */
#undef PMIX_HAVE_ATTRIBUTE_UNUSED
/* Whether your compiler has __attribute__ visibility or not */
#undef PMIX_HAVE_ATTRIBUTE_VISIBILITY
/* Whether your compiler has __attribute__ warn unused result or not */
#undef PMIX_HAVE_ATTRIBUTE_WARN_UNUSED_RESULT
/* Whether your compiler has __attribute__ weak alias or not */
#undef PMIX_HAVE_ATTRIBUTE_WEAK_ALIAS
/* whether qsort is broken or not */
#undef PMIX_HAVE_BROKEN_QSORT
/* whether ceil is found and available */
#undef PMIX_HAVE_CEIL
/* whether dirname is found and available */
#undef PMIX_HAVE_DIRNAME
/* Whether we have hwloc support or not */
#undef PMIX_HAVE_HWLOC
/* Whether we have munge support or not */
#undef PMIX_HAVE_MUNGE
/* Whether we have sasl support or not */
#undef PMIX_HAVE_SASL
/* Whether we have SA_RESTART in <signal.h> or not */
#undef PMIX_HAVE_SA_RESTART
/* whether socket is found and available */
#undef PMIX_HAVE_SOCKET
/* Whether we have __va_copy or not */
#undef PMIX_HAVE_UNDERSCORE_VA_COPY
/* Whether we have va_copy or not */
#undef PMIX_HAVE_VA_COPY
/* Location of hwloc.h */
#undef PMIX_HWLOC_HEADER
/* ident string for PMIX */
#undef PMIX_IDENT_STRING
/* The library major version is always available, contrary to VERSION */
#undef PMIX_MAJOR_VERSION
/* The library minor version is always available, contrary to VERSION */
#undef PMIX_MINOR_VERSION
/* Whether the C compiler supports "bool" without any other help (such as
<stdbool.h>) */
#undef PMIX_NEED_C_BOOL
/* type to use for ptrdiff_t */
#undef PMIX_PTRDIFF_TYPE
/* The library release version is always available, contrary to VERSION */
#undef PMIX_RELEASE_VERSION
/* The pmix symbol prefix */
#undef PMIX_SYM_PREFIX
@ -179,20 +528,119 @@
/* The pmix symbol prefix in all caps */
#undef PMIX_SYM_PREFIX_CAPS
/* ensure we have the version info available for external users */
#undef PMIX_MAJOR_VERSION
#undef PMIX_MINOR_VERSION
#undef PMIX_RELEASE_VERSION
/* Whether we need to re-define all the pmix public symbols or not */
#undef PMIX_SYM_TRANSFORM
/* Whether to use <stdbool.h> or not */
#undef PMIX_USE_STDBOOL_H
#undef BEGIN_C_DECLS
#undef END_C_DECLS
#if defined(c_plusplus) || defined(__cplusplus)
# define BEGIN_C_DECLS extern "C" {
# define END_C_DECLS }
#else
#define BEGIN_C_DECLS /* empty */
#define END_C_DECLS /* empty */
/* The library version is always available, contrary to VERSION */
#undef PMIX_VERSION
/* if want pretty-print stack trace feature */
#undef PMIX_WANT_PRETTY_PRINT_STACKTRACE
/* The size of `char', as computed by sizeof. */
#undef SIZEOF_CHAR
/* The size of `double', as computed by sizeof. */
#undef SIZEOF_DOUBLE
/* The size of `float', as computed by sizeof. */
#undef SIZEOF_FLOAT
/* The size of `int', as computed by sizeof. */
#undef SIZEOF_INT
/* The size of `long', as computed by sizeof. */
#undef SIZEOF_LONG
/* The size of `long long', as computed by sizeof. */
#undef SIZEOF_LONG_LONG
/* The size of `pid_t', as computed by sizeof. */
#undef SIZEOF_PID_T
/* The size of `ptrdiff_t', as computed by sizeof. */
#undef SIZEOF_PTRDIFF_T
/* The size of `short', as computed by sizeof. */
#undef SIZEOF_SHORT
/* The size of `size_t', as computed by sizeof. */
#undef SIZEOF_SIZE_T
/* The size of `ssize_t', as computed by sizeof. */
#undef SIZEOF_SSIZE_T
/* The size of `void *', as computed by sizeof. */
#undef SIZEOF_VOID_P
/* The size of `wchar_t', as computed by sizeof. */
#undef SIZEOF_WCHAR_T
/* The size of `_Bool', as computed by sizeof. */
#undef SIZEOF__BOOL
/* Define to 1 if you have the ANSI C header files. */
#undef STDC_HEADERS
/* Enable extensions on AIX 3, Interix. */
#ifndef _ALL_SOURCE
# undef _ALL_SOURCE
#endif
/* Enable GNU extensions on systems that have them. */
#ifndef _GNU_SOURCE
# undef _GNU_SOURCE
#endif
/* Enable threading extensions on Solaris. */
#ifndef _POSIX_PTHREAD_SEMANTICS
# undef _POSIX_PTHREAD_SEMANTICS
#endif
/* Enable extensions on HP NonStop. */
#ifndef _TANDEM_SOURCE
# undef _TANDEM_SOURCE
#endif
/* Enable general extensions on Solaris. */
#ifndef __EXTENSIONS__
# undef __EXTENSIONS__
#endif
/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
significant byte first (like Motorola and SPARC, unlike Intel). */
#if defined AC_APPLE_UNIVERSAL_BUILD
# if defined __BIG_ENDIAN__
# define WORDS_BIGENDIAN 1
# endif
#else
# ifndef WORDS_BIGENDIAN
# undef WORDS_BIGENDIAN
# endif
#endif
/* Enable GNU extensions on systems that have them. */
#ifndef _GNU_SOURCE
# undef _GNU_SOURCE
#endif
/* Define to 1 if on MINIX. */
#undef _MINIX
/* Define to 2 if the system does not provide POSIX.1 features except with
this defined. */
#undef _POSIX_1_SOURCE
/* Define to 1 if you need to in order for `stat' and other things to work. */
#undef _POSIX_SOURCE
/* Define to `__inline__' or `__inline' if that's what the C compiler
calls it, or to nothing if 'inline' is not supported under any name. */
#ifndef __cplusplus
#undef inline
#endif
#include <pmix/autogen/pmix_config_bottom.h>
#endif /* PMIX_CONFIG_H */

Просмотреть файл

@ -14,6 +14,7 @@
* Copyright (c) 2013 Mellanox Technologies, Inc.
* All rights reserved.
* Copyright (c) 2013-2015 Intel, Inc. All rights reserved
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -69,6 +70,54 @@
#define END_C_DECLS /* empty */
#endif
/* Defined to 1 on Linux */
#undef PMIX_LINUX_SYS
/* Defined to 1 if the CPU_SET macro works */
#undef PMIX_HAVE_CPU_SET
/* Defined to 1 if you have the `windows.h' header. */
#undef PMIX_HAVE_WINDOWS_H
#undef pmix_pid_t
#undef pmix_thread_t
/*
* Note: this is public. We can not assume anything from the compiler used
* by the application and thus the PMIX_HAVE_* macros below are not
* fetched from the autoconf result here. We only automatically use a few
* well-known easy cases.
*/
/* Some handy constants to make the logic below a little more readable */
#if defined(__cplusplus) && \
(__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR >= 4))
#define GXX_ABOVE_3_4 1
#else
#define GXX_ABOVE_3_4 0
#endif
#if !defined(__cplusplus) && \
(__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95))
#define GCC_ABOVE_2_95 1
#else
#define GCC_ABOVE_2_95 0
#endif
#if !defined(__cplusplus) && \
(__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96))
#define GCC_ABOVE_2_96 1
#else
#define GCC_ABOVE_2_96 0
#endif
#if !defined(__cplusplus) && \
(__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3))
#define GCC_ABOVE_3_3 1
#else
#define GCC_ABOVE_3_3 0
#endif
/**
* The attribute definition should be included before any potential
* usage.
@ -81,6 +130,16 @@
# define __pmix_attribute_aligned_max__
#endif
/* Note that if we're compiling C++, then just use the "inline"
keyword, since it's part of C++ */
#if defined(c_plusplus) || defined(__cplusplus)
# define __pmix_inline inline
#elif defined(_MSC_VER) || defined(__HP_cc)
# define __pmix_inline __inline
#else
# define __pmix_inline __inline__
#endif
#if PMIX_HAVE_ATTRIBUTE_ALWAYS_INLINE
# define __pmix_attribute_always_inline__ __attribute__((__always_inline__))
#else
@ -93,12 +152,38 @@
# define __pmix_attribute_cold__
#endif
#ifdef PMIX_HAVE_ATTRIBUTE_CONST
#define __PMIX_HAVE_ATTRIBUTE_CONST PMIX_HAVE_ATTRIBUTE_CONST
#elif defined(__GNUC__)
# define __PMIX_HAVE_ATTRIBUTE_CONST (GXX_ABOVE_3_4 || GCC_ABOVE_2_95)
#else
# define __PMIX_HAVE_ATTRIBUTE_CONST 0
#endif
#if __PMIX_HAVE_ATTRIBUTE_CONST
# define __pmix_attribute_const __attribute__((__const__))
#else
# define __pmix_attribute_const
#endif
#if PMIX_HAVE_ATTRIBUTE_CONST
# define __pmix_attribute_const__ __attribute__((__const__))
#else
# define __pmix_attribute_const__
#endif
#ifdef PMIX_HAVE_ATTRIBUTE_DEPRECATED
#define __PMIX_HAVE_ATTRIBUTE_DEPRECATED PMIX_HAVE_ATTRIBUTE_DEPRECATED
#elif defined(__GNUC__)
# define __PMIX_HAVE_ATTRIBUTE_DEPRECATED (GXX_ABOVE_3_4 || GCC_ABOVE_3_3)
#else
# define __PMIX_HAVE_ATTRIBUTE_DEPRECATED 0
#endif
#if __PMIX_HAVE_ATTRIBUTE_DEPRECATED
# define __pmix_attribute_deprecated __attribute__((__deprecated__))
#else
# define __pmix_attribute_deprecated
#endif
#if PMIX_HAVE_ATTRIBUTE_DEPRECATED
# define __pmix_attribute_deprecated__ __attribute__((__deprecated__))
#else
@ -124,12 +209,38 @@
# define __pmix_attribute_hot__
#endif
#ifdef PMIX_HAVE_ATTRIBUTE_MALLOC
#define __PMIX_HAVE_ATTRIBUTE_MALLOC PMIX_HAVE_ATTRIBUTE_MALLOC
#elif defined(__GNUC__)
# define __PMIX_HAVE_ATTRIBUTE_MALLOC (GXX_ABOVE_3_4 || GCC_ABOVE_2_96)
#else
# define __PMIX_HAVE_ATTRIBUTE_MALLOC 0
#endif
#if __PMIX_HAVE_ATTRIBUTE_MALLOC
# define __pmix_attribute_malloc __attribute__((__malloc__))
#else
# define __pmix_attribute_malloc
#endif
#if PMIX_HAVE_ATTRIBUTE_MALLOC
# define __pmix_attribute_malloc__ __attribute__((__malloc__))
#else
# define __pmix_attribute_malloc__
#endif
#ifdef PMIX_HAVE_ATTRIBUTE_MAY_ALIAS
#define __PMIX_HAVE_ATTRIBUTE_MAY_ALIAS PMIX_HAVE_ATTRIBUTE_MAY_ALIAS
#elif defined(__GNUC__)
# define __PMIX_HAVE_ATTRIBUTE_MAY_ALIAS (GXX_ABOVE_3_4 || GCC_ABOVE_3_3)
#else
# define __PMIX_HAVE_ATTRIBUTE_MAY_ALIAS 0
#endif
#if __PMIX_HAVE_ATTRIBUTE_MAY_ALIAS
# define __pmix_attribute_may_alias __attribute__((__may_alias__))
#else
# define __pmix_attribute_may_alias
#endif
#if PMIX_HAVE_ATTRIBUTE_MAY_ALIAS
# define __pmix_attribute_may_alias__ __attribute__((__may_alias__))
#else
@ -169,6 +280,19 @@
# define __pmix_attribute_packed__
#endif
#ifdef PMIX_HAVE_ATTRIBUTE_PURE
#define __PMIX_HAVE_ATTRIBUTE_PURE PMIX_HAVE_ATTRIBUTE_PURE
#elif defined(__GNUC__)
# define __PMIX_HAVE_ATTRIBUTE_PURE (GXX_ABOVE_3_4 || GCC_ABOVE_2_96)
#else
# define __PMIX_HAVE_ATTRIBUTE_PURE 0
#endif
#if __PMIX_HAVE_ATTRIBUTE_PURE
# define __pmix_attribute_pure __attribute__((__pure__))
#else
# define __pmix_attribute_pure
#endif
#if PMIX_HAVE_ATTRIBUTE_PURE
# define __pmix_attribute_pure__ __attribute__((__pure__))
#else
@ -181,6 +305,20 @@
# define __pmix_attribute_sentinel__
#endif
/* Maybe before gcc 2.95 too */
#ifdef PMIX_HAVE_ATTRIBUTE_UNUSED
#define __PMIX_HAVE_ATTRIBUTE_UNUSED PMIX_HAVE_ATTRIBUTE_UNUSED
#elif defined(__GNUC__)
# define __PMIX_HAVE_ATTRIBUTE_UNUSED (GXX_ABOVE_3_4 || GCC_ABOVE_2_95)
#else
# define __PMIX_HAVE_ATTRIBUTE_UNUSED 0
#endif
#if __PMIX_HAVE_ATTRIBUTE_UNUSED
# define __pmix_attribute_unused __attribute__((__unused__))
#else
# define __pmix_attribute_unused
#endif
#if PMIX_HAVE_ATTRIBUTE_UNUSED
# define __pmix_attribute_unused__ __attribute__((__unused__))
#else
@ -205,6 +343,19 @@
# define __pmix_attribute_destructor__
#endif
#ifndef PMIX_DECLSPEC
# define PMIX_DECLSPEC
#ifdef PMIX_C_HAVE_VISIBILITY
# if PMIX_C_HAVE_VISIBILITY
# define PMIX_EXPORT __attribute__((__visibility__("default")))
# else
# define PMIX_EXPORT
# endif
#else
# define PMIX_EXPORT
#endif
#endif
#ifndef PMIX_DECLSPEC
#define PMIX_DECLSPEC
# if PMIX_C_HAVE_VISIBILITY
@ -408,6 +559,16 @@ typedef PMIX_PTRDIFF_TYPE ptrdiff_t;
#define restrict
#endif
#if (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95))
# define __pmix_restrict __restrict
#else
# if __STDC_VERSION__ >= 199901L
# define __pmix_restrict restrict
# else
# define __pmix_restrict
# endif
#endif
#else
/* For a similar reason to what is listed in pmix_config_top.h, we

Просмотреть файл

@ -1,6 +1,7 @@
/*
* Copyright (c) 2011 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2013-2015 Intel, Inc. All rights reserved
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -17,7 +18,7 @@
*/
#ifndef PMIX_CONFIG_H
#error "pmix_config_top.h should only be included from pmix_config.h"
#error "pmix_config_top.h should only be included from config.h(.in)"
#endif
/* The only purpose of this file is to undef the PACKAGE_<foo> macros

Просмотреть файл

@ -9,6 +9,7 @@
* University of Stuttgart. All rights reserved.
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -27,6 +28,7 @@
* Include what we can and define what is missing.
*/
#include <limits.h>
#include <stdint.h>
#ifdef HAVE_SYS_TYPES_H
#include <sys/types.h>

Просмотреть файл

@ -391,11 +391,11 @@ typedef struct pmix_proc {
/**** PMIX VALUE STRUCT ****/
struct pmix_info;
typedef struct pmix_info_t pmix_info_t;
typedef struct pmix_info_array {
size_t size;
struct pmix_info *array;
pmix_info_t *array;
} pmix_info_array_t;
/* NOTE: operations can supply a collection of values under
* a single key by passing a pmix_value_t containing an
@ -503,10 +503,10 @@ void pmix_value_load(pmix_value_t *v, void *data, pmix_data_type_t type);
/**** PMIX INFO STRUCT ****/
typedef struct pmix_info {
struct pmix_info_t {
char key[PMIX_MAX_KEYLEN+1]; // ensure room for the NULL terminator
pmix_value_t value;
} pmix_info_t;
};
/* utility macros for working with pmix_info_t structs */
#define PMIX_INFO_CREATE(m, n) \

Просмотреть файл

@ -9,9 +9,10 @@
* University of Stuttgart. All rights reserved.
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2014-2015 Intel, Inc. All rights reserved.
* Copyright (c) 2014-2016 Intel, Inc. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -27,7 +28,7 @@
#include "src/util/output.h"
#include "src/buffer_ops/internal.h"
int pmix_bfrop_copy(void **dest, void *src, pmix_data_type_t type)
pmix_status_t pmix_bfrop_copy(void **dest, void *src, pmix_data_type_t type)
{
pmix_bfrop_type_info_t *info;
@ -51,7 +52,7 @@ int pmix_bfrop_copy(void **dest, void *src, pmix_data_type_t type)
return info->odti_copy_fn(dest, src, type);
}
int pmix_bfrop_copy_payload(pmix_buffer_t *dest, pmix_buffer_t *src)
pmix_status_t pmix_bfrop_copy_payload(pmix_buffer_t *dest, pmix_buffer_t *src)
{
size_t to_copy = 0;
char *ptr;
@ -80,7 +81,7 @@ int pmix_bfrop_copy_payload(pmix_buffer_t *dest, pmix_buffer_t *src)
/*
* STANDARD COPY FUNCTION - WORKS FOR EVERYTHING NON-STRUCTURED
*/
int pmix_bfrop_std_copy(void **dest, void *src, pmix_data_type_t type)
pmix_status_t pmix_bfrop_std_copy(void **dest, void *src, pmix_data_type_t type)
{
size_t datasize;
uint8_t *val = NULL;
@ -156,7 +157,7 @@ int pmix_bfrop_std_copy(void **dest, void *src, pmix_data_type_t type)
/*
* STRING
*/
int pmix_bfrop_copy_string(char **dest, char *src, pmix_data_type_t type)
pmix_status_t pmix_bfrop_copy_string(char **dest, char *src, pmix_data_type_t type)
{
if (NULL == src) { /* got zero-length string/NULL pointer - store NULL */
*dest = NULL;
@ -296,7 +297,7 @@ pmix_status_t pmix_value_xfer(pmix_value_t *p, pmix_value_t *src)
case PMIX_INFO_ARRAY:
p->data.array.size = src->data.array.size;
if (0 < src->data.array.size) {
p->data.array.array = (struct pmix_info *)malloc(src->data.array.size * sizeof(pmix_info_t));
p->data.array.array = (pmix_info_t*)malloc(src->data.array.size * sizeof(pmix_info_t));
p1 = (pmix_info_t*)p->data.array.array;
s1 = (pmix_info_t*)src->data.array.array;
memcpy(p1, s1, src->data.array.size * sizeof(pmix_info_t));
@ -320,7 +321,7 @@ pmix_status_t pmix_value_xfer(pmix_value_t *p, pmix_value_t *src)
}
/* PMIX_VALUE */
int pmix_bfrop_copy_value(pmix_value_t **dest, pmix_value_t *src,
pmix_status_t pmix_bfrop_copy_value(pmix_value_t **dest, pmix_value_t *src,
pmix_data_type_t type)
{
pmix_value_t *p;
@ -338,7 +339,7 @@ int pmix_bfrop_copy_value(pmix_value_t **dest, pmix_value_t *src,
return pmix_value_xfer(p, src);
}
int pmix_bfrop_copy_info(pmix_info_t **dest, pmix_info_t *src,
pmix_status_t pmix_bfrop_copy_info(pmix_info_t **dest, pmix_info_t *src,
pmix_data_type_t type)
{
*dest = (pmix_info_t*)malloc(sizeof(pmix_info_t));
@ -346,7 +347,7 @@ int pmix_bfrop_copy_info(pmix_info_t **dest, pmix_info_t *src,
return pmix_value_xfer(&(*dest)->value, &src->value);
}
int pmix_bfrop_copy_buf(pmix_buffer_t **dest, pmix_buffer_t *src,
pmix_status_t pmix_bfrop_copy_buf(pmix_buffer_t **dest, pmix_buffer_t *src,
pmix_data_type_t type)
{
*dest = PMIX_NEW(pmix_buffer_t);
@ -354,7 +355,7 @@ int pmix_bfrop_copy_buf(pmix_buffer_t **dest, pmix_buffer_t *src,
return PMIX_SUCCESS;
}
int pmix_bfrop_copy_app(pmix_app_t **dest, pmix_app_t *src,
pmix_status_t pmix_bfrop_copy_app(pmix_app_t **dest, pmix_app_t *src,
pmix_data_type_t type)
{
size_t j;
@ -374,7 +375,7 @@ int pmix_bfrop_copy_app(pmix_app_t **dest, pmix_app_t *src,
return PMIX_SUCCESS;
}
int pmix_bfrop_copy_kval(pmix_kval_t **dest, pmix_kval_t *src,
pmix_status_t pmix_bfrop_copy_kval(pmix_kval_t **dest, pmix_kval_t *src,
pmix_data_type_t type)
{
pmix_kval_t *p;
@ -392,7 +393,7 @@ int pmix_bfrop_copy_kval(pmix_kval_t **dest, pmix_kval_t *src,
return pmix_value_xfer(p->value, src->value);
}
int pmix_bfrop_copy_array(pmix_info_array_t **dest,
pmix_status_t pmix_bfrop_copy_array(pmix_info_array_t **dest,
pmix_info_array_t *src,
pmix_data_type_t type)
{
@ -400,14 +401,14 @@ int pmix_bfrop_copy_array(pmix_info_array_t **dest,
*dest = (pmix_info_array_t*)malloc(sizeof(pmix_info_array_t));
(*dest)->size = src->size;
(*dest)->array = (struct pmix_info *)malloc(src->size * sizeof(pmix_info_t));
(*dest)->array = (pmix_info_t*)malloc(src->size * sizeof(pmix_info_t));
d1 = (pmix_info_t*)(*dest)->array;
s1 = (pmix_info_t*)src->array;
memcpy(d1, s1, src->size * sizeof(pmix_info_t));
return PMIX_SUCCESS;
}
int pmix_bfrop_copy_proc(pmix_proc_t **dest, pmix_proc_t *src,
pmix_status_t pmix_bfrop_copy_proc(pmix_proc_t **dest, pmix_proc_t *src,
pmix_data_type_t type)
{
*dest = (pmix_proc_t*)malloc(sizeof(pmix_proc_t));
@ -420,7 +421,7 @@ int pmix_bfrop_copy_proc(pmix_proc_t **dest, pmix_proc_t *src,
}
#if PMIX_HAVE_HWLOC
int pmix_bfrop_copy_topo(hwloc_topology_t *dest,
pmix_status_t pmix_bfrop_copy_topo(hwloc_topology_t *dest,
hwloc_topology_t src,
pmix_data_type_t type)
{
@ -429,7 +430,7 @@ int pmix_bfrop_copy_topo(hwloc_topology_t *dest,
}
#endif
int pmix_bfrop_copy_modex(pmix_modex_data_t **dest, pmix_modex_data_t *src,
pmix_status_t pmix_bfrop_copy_modex(pmix_modex_data_t **dest, pmix_modex_data_t *src,
pmix_data_type_t type)
{
*dest = (pmix_modex_data_t*)malloc(sizeof(pmix_modex_data_t));
@ -449,7 +450,7 @@ int pmix_bfrop_copy_modex(pmix_modex_data_t **dest, pmix_modex_data_t *src,
return PMIX_SUCCESS;
}
int pmix_bfrop_copy_persist(pmix_persistence_t **dest, pmix_persistence_t *src,
pmix_status_t pmix_bfrop_copy_persist(pmix_persistence_t **dest, pmix_persistence_t *src,
pmix_data_type_t type)
{
*dest = (pmix_persistence_t*)malloc(sizeof(pmix_persistence_t));
@ -460,7 +461,7 @@ int pmix_bfrop_copy_persist(pmix_persistence_t **dest, pmix_persistence_t *src,
return PMIX_SUCCESS;
}
int pmix_bfrop_copy_bo(pmix_byte_object_t **dest, pmix_byte_object_t *src,
pmix_status_t pmix_bfrop_copy_bo(pmix_byte_object_t **dest, pmix_byte_object_t *src,
pmix_data_type_t type)
{
*dest = (pmix_byte_object_t*)malloc(sizeof(pmix_byte_object_t));
@ -473,7 +474,7 @@ int pmix_bfrop_copy_bo(pmix_byte_object_t **dest, pmix_byte_object_t *src,
return PMIX_SUCCESS;
}
int pmix_bfrop_copy_pdata(pmix_pdata_t **dest, pmix_pdata_t *src,
pmix_status_t pmix_bfrop_copy_pdata(pmix_pdata_t **dest, pmix_pdata_t *src,
pmix_data_type_t type)
{
*dest = (pmix_pdata_t*)malloc(sizeof(pmix_pdata_t));

Просмотреть файл

@ -14,6 +14,7 @@
* Copyright (c) 2014-2015 Intel, Inc. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -194,8 +195,8 @@ PMIX_DECLSPEC PMIX_CLASS_DECLARATION(pmix_bfrop_type_info_t);
* globals needed within bfrop
*/
extern bool pmix_bfrop_initialized;
extern int pmix_bfrop_initial_size;
extern int pmix_bfrop_threshold_size;
extern size_t pmix_bfrop_initial_size;
extern size_t pmix_bfrop_threshold_size;
extern pmix_pointer_array_t pmix_bfrop_types;
extern pmix_data_type_t pmix_bfrop_num_reg_types;
@ -218,18 +219,18 @@ extern pmix_data_type_t pmix_bfrop_num_reg_types;
* Implementations of API functions
*/
int pmix_bfrop_pack(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack(pmix_buffer_t *buffer, const void *src,
int32_t num_vals,
pmix_data_type_t type);
int pmix_bfrop_unpack(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack(pmix_buffer_t *buffer, void *dest,
int32_t *max_num_vals,
pmix_data_type_t type);
int pmix_bfrop_copy(void **dest, void *src, pmix_data_type_t type);
pmix_status_t pmix_bfrop_copy(void **dest, void *src, pmix_data_type_t type);
int pmix_bfrop_print(char **output, char *prefix, void *src, pmix_data_type_t type);
pmix_status_t pmix_bfrop_print(char **output, char *prefix, void *src, pmix_data_type_t type);
int pmix_bfrop_copy_payload(pmix_buffer_t *dest, pmix_buffer_t *src);
pmix_status_t pmix_bfrop_copy_payload(pmix_buffer_t *dest, pmix_buffer_t *src);
/*
* Specialized functions
@ -244,214 +245,214 @@ PMIX_DECLSPEC pmix_status_t pmix_bfrop_unpack_buffer(pmix_buffer_t *buffer, v
* Internal pack functions
*/
int pmix_bfrop_pack_bool(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_bool(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type);
int pmix_bfrop_pack_byte(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_byte(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type);
int pmix_bfrop_pack_string(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_string(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type);
int pmix_bfrop_pack_sizet(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_sizet(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type);
int pmix_bfrop_pack_pid(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_pid(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type);
int pmix_bfrop_pack_int(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_int(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type);
int pmix_bfrop_pack_int16(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_int16(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type);
int pmix_bfrop_pack_int32(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_int32(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type);
int pmix_bfrop_pack_datatype(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_datatype(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type);
int pmix_bfrop_pack_int64(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_int64(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type);
int pmix_bfrop_pack_float(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_float(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type);
int pmix_bfrop_pack_double(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_double(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type);
int pmix_bfrop_pack_timeval(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_timeval(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type);
int pmix_bfrop_pack_time(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_time(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type);
#if PMIX_HAVE_HWLOC
int pmix_bfrop_pack_topo(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_topo(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type);
#endif
int pmix_bfrop_pack_value(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_value(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type);
int pmix_bfrop_pack_array(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_array(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type);
int pmix_bfrop_pack_proc(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_proc(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type);
int pmix_bfrop_pack_app(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_app(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type);
int pmix_bfrop_pack_info(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_info(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type);
int pmix_bfrop_pack_buf(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_buf(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type);
int pmix_bfrop_pack_kval(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_kval(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type);
int pmix_bfrop_pack_modex(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_modex(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type);
int pmix_bfrop_pack_persist(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_persist(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type);
int pmix_bfrop_pack_bo(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_bo(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type);
int pmix_bfrop_pack_pdata(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_pdata(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type);
/*
* Internal unpack functions
*/
int pmix_bfrop_unpack_bool(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_bool(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type);
pmix_status_t pmix_bfrop_unpack_byte(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type);
pmix_status_t pmix_bfrop_unpack_string(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type);
int pmix_bfrop_unpack_sizet(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_sizet(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type);
int pmix_bfrop_unpack_pid(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_pid(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type);
pmix_status_t pmix_bfrop_unpack_int(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type);
int pmix_bfrop_unpack_int16(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_int16(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type);
pmix_status_t pmix_bfrop_unpack_int32(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type);
int pmix_bfrop_unpack_datatype(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_datatype(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type);
int pmix_bfrop_unpack_int64(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_int64(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type);
int pmix_bfrop_unpack_float(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_float(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type);
int pmix_bfrop_unpack_double(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_double(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type);
int pmix_bfrop_unpack_timeval(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_timeval(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type);
int pmix_bfrop_unpack_time(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_time(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type);
#if PMIX_HAVE_HWLOC
int pmix_bfrop_unpack_topo(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_topo(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type);
#endif
pmix_status_t pmix_bfrop_unpack_value(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type);
int pmix_bfrop_unpack_array(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_array(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type);
int pmix_bfrop_unpack_proc(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_proc(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type);
int pmix_bfrop_unpack_app(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_app(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type);
int pmix_bfrop_unpack_info(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_info(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type);
int pmix_bfrop_unpack_buf(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_buf(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type);
int pmix_bfrop_unpack_kval(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_kval(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type);
int pmix_bfrop_unpack_modex(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_modex(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type);
int pmix_bfrop_unpack_persist(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_persist(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type);
int pmix_bfrop_unpack_bo(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_bo(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type);
int pmix_bfrop_unpack_pdata(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_pdata(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type);
/*
* Internal copy functions
*/
int pmix_bfrop_std_copy(void **dest, void *src, pmix_data_type_t type);
pmix_status_t pmix_bfrop_std_copy(void **dest, void *src, pmix_data_type_t type);
int pmix_bfrop_copy_string(char **dest, char *src, pmix_data_type_t type);
pmix_status_t pmix_bfrop_copy_string(char **dest, char *src, pmix_data_type_t type);
#if PMIX_HAVE_HWLOC
int pmix_bfrop_copy_topo(hwloc_topology_t *dest,
pmix_status_t pmix_bfrop_copy_topo(hwloc_topology_t *dest,
hwloc_topology_t src,
pmix_data_type_t type);
#endif
int pmix_bfrop_copy_value(pmix_value_t **dest, pmix_value_t *src,
pmix_status_t pmix_bfrop_copy_value(pmix_value_t **dest, pmix_value_t *src,
pmix_data_type_t type);
int pmix_bfrop_copy_array(pmix_info_array_t **dest, pmix_info_array_t *src,
pmix_status_t pmix_bfrop_copy_array(pmix_info_array_t **dest, pmix_info_array_t *src,
pmix_data_type_t type);
int pmix_bfrop_copy_proc(pmix_proc_t **dest, pmix_proc_t *src,
pmix_status_t pmix_bfrop_copy_proc(pmix_proc_t **dest, pmix_proc_t *src,
pmix_data_type_t type);
int pmix_bfrop_copy_app(pmix_app_t **dest, pmix_app_t *src,
pmix_status_t pmix_bfrop_copy_app(pmix_app_t **dest, pmix_app_t *src,
pmix_data_type_t type);
int pmix_bfrop_copy_info(pmix_info_t **dest, pmix_info_t *src,
pmix_status_t pmix_bfrop_copy_info(pmix_info_t **dest, pmix_info_t *src,
pmix_data_type_t type);
int pmix_bfrop_copy_buf(pmix_buffer_t **dest, pmix_buffer_t *src,
pmix_status_t pmix_bfrop_copy_buf(pmix_buffer_t **dest, pmix_buffer_t *src,
pmix_data_type_t type);
int pmix_bfrop_copy_kval(pmix_kval_t **dest, pmix_kval_t *src,
pmix_status_t pmix_bfrop_copy_kval(pmix_kval_t **dest, pmix_kval_t *src,
pmix_data_type_t type);
int pmix_bfrop_copy_modex(pmix_modex_data_t **dest, pmix_modex_data_t *src,
pmix_status_t pmix_bfrop_copy_modex(pmix_modex_data_t **dest, pmix_modex_data_t *src,
pmix_data_type_t type);
int pmix_bfrop_copy_persist(pmix_persistence_t **dest, pmix_persistence_t *src,
pmix_status_t pmix_bfrop_copy_persist(pmix_persistence_t **dest, pmix_persistence_t *src,
pmix_data_type_t type);
int pmix_bfrop_copy_bo(pmix_byte_object_t **dest, pmix_byte_object_t *src,
pmix_status_t pmix_bfrop_copy_bo(pmix_byte_object_t **dest, pmix_byte_object_t *src,
pmix_data_type_t type);
int pmix_bfrop_copy_pdata(pmix_pdata_t **dest, pmix_pdata_t *src,
pmix_status_t pmix_bfrop_copy_pdata(pmix_pdata_t **dest, pmix_pdata_t *src,
pmix_data_type_t type);
/*
* Internal print functions
*/
int pmix_bfrop_print_bool(char **output, char *prefix, bool *src, pmix_data_type_t type);
int pmix_bfrop_print_byte(char **output, char *prefix, uint8_t *src, pmix_data_type_t type);
int pmix_bfrop_print_string(char **output, char *prefix, char *src, pmix_data_type_t type);
int pmix_bfrop_print_size(char **output, char *prefix, size_t *src, pmix_data_type_t type);
int pmix_bfrop_print_pid(char **output, char *prefix, pid_t *src, pmix_data_type_t type);
pmix_status_t pmix_bfrop_print_bool(char **output, char *prefix, bool *src, pmix_data_type_t type);
pmix_status_t pmix_bfrop_print_byte(char **output, char *prefix, uint8_t *src, pmix_data_type_t type);
pmix_status_t pmix_bfrop_print_string(char **output, char *prefix, char *src, pmix_data_type_t type);
pmix_status_t pmix_bfrop_print_size(char **output, char *prefix, size_t *src, pmix_data_type_t type);
pmix_status_t pmix_bfrop_print_pid(char **output, char *prefix, pid_t *src, pmix_data_type_t type);
int pmix_bfrop_print_int(char **output, char *prefix, int *src, pmix_data_type_t type);
int pmix_bfrop_print_int8(char **output, char *prefix, int8_t *src, pmix_data_type_t type);
int pmix_bfrop_print_int16(char **output, char *prefix, int16_t *src, pmix_data_type_t type);
int pmix_bfrop_print_int32(char **output, char *prefix, int32_t *src, pmix_data_type_t type);
int pmix_bfrop_print_int64(char **output, char *prefix, int64_t *src, pmix_data_type_t type);
pmix_status_t pmix_bfrop_print_int(char **output, char *prefix, int *src, pmix_data_type_t type);
pmix_status_t pmix_bfrop_print_int8(char **output, char *prefix, int8_t *src, pmix_data_type_t type);
pmix_status_t pmix_bfrop_print_int16(char **output, char *prefix, int16_t *src, pmix_data_type_t type);
pmix_status_t pmix_bfrop_print_int32(char **output, char *prefix, int32_t *src, pmix_data_type_t type);
pmix_status_t pmix_bfrop_print_int64(char **output, char *prefix, int64_t *src, pmix_data_type_t type);
int pmix_bfrop_print_uint(char **output, char *prefix, int *src, pmix_data_type_t type);
int pmix_bfrop_print_uint8(char **output, char *prefix, uint8_t *src, pmix_data_type_t type);
int pmix_bfrop_print_uint16(char **output, char *prefix, uint16_t *src, pmix_data_type_t type);
int pmix_bfrop_print_uint32(char **output, char *prefix, uint32_t *src, pmix_data_type_t type);
int pmix_bfrop_print_uint64(char **output, char *prefix, uint64_t *src, pmix_data_type_t type);
pmix_status_t pmix_bfrop_print_uint(char **output, char *prefix, uint *src, pmix_data_type_t type);
pmix_status_t pmix_bfrop_print_uint8(char **output, char *prefix, uint8_t *src, pmix_data_type_t type);
pmix_status_t pmix_bfrop_print_uint16(char **output, char *prefix, uint16_t *src, pmix_data_type_t type);
pmix_status_t pmix_bfrop_print_uint32(char **output, char *prefix, uint32_t *src, pmix_data_type_t type);
pmix_status_t pmix_bfrop_print_uint64(char **output, char *prefix, uint64_t *src, pmix_data_type_t type);
int pmix_bfrop_print_float(char **output, char *prefix, float *src, pmix_data_type_t type);
int pmix_bfrop_print_double(char **output, char *prefix, double *src, pmix_data_type_t type);
pmix_status_t pmix_bfrop_print_float(char **output, char *prefix, float *src, pmix_data_type_t type);
pmix_status_t pmix_bfrop_print_double(char **output, char *prefix, double *src, pmix_data_type_t type);
int pmix_bfrop_print_timeval(char **output, char *prefix, struct timeval *src, pmix_data_type_t type);
int pmix_bfrop_print_time(char **output, char *prefix, time_t *src, pmix_data_type_t type);
pmix_status_t pmix_bfrop_print_timeval(char **output, char *prefix, struct timeval *src, pmix_data_type_t type);
pmix_status_t pmix_bfrop_print_time(char **output, char *prefix, time_t *src, pmix_data_type_t type);
#if PMIX_HAVE_HWLOC
int pmix_bfrop_print_topo(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_topo(char **output, char *prefix,
hwloc_topology_t src, pmix_data_type_t type);
#endif
int pmix_bfrop_print_value(char **output, char *prefix, pmix_value_t *src, pmix_data_type_t type);
int pmix_bfrop_print_array(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_value(char **output, char *prefix, pmix_value_t *src, pmix_data_type_t type);
pmix_status_t pmix_bfrop_print_array(char **output, char *prefix,
pmix_info_array_t *src, pmix_data_type_t type);
int pmix_bfrop_print_proc(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_proc(char **output, char *prefix,
pmix_proc_t *src, pmix_data_type_t type);
int pmix_bfrop_print_app(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_app(char **output, char *prefix,
pmix_app_t *src, pmix_data_type_t type);
int pmix_bfrop_print_info(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_info(char **output, char *prefix,
pmix_info_t *src, pmix_data_type_t type);
int pmix_bfrop_print_buf(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_buf(char **output, char *prefix,
pmix_buffer_t *src, pmix_data_type_t type);
int pmix_bfrop_print_kval(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_kval(char **output, char *prefix,
pmix_kval_t *src, pmix_data_type_t type);
int pmix_bfrop_print_modex(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_modex(char **output, char *prefix,
pmix_modex_data_t *src, pmix_data_type_t type);
int pmix_bfrop_print_persist(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_persist(char **output, char *prefix,
pmix_persistence_t *src, pmix_data_type_t type);
int pmix_bfrop_print_bo(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_bo(char **output, char *prefix,
pmix_byte_object_t *src, pmix_data_type_t type);
int pmix_bfrop_print_pdata(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_pdata(char **output, char *prefix,
pmix_pdata_t *src, pmix_data_type_t type);
/*
@ -464,7 +465,7 @@ bool pmix_bfrop_too_small(pmix_buffer_t *buffer, size_t bytes_reqd);
pmix_bfrop_type_info_t* pmix_bfrop_find_type(pmix_data_type_t type);
int pmix_bfrop_store_data_type(pmix_buffer_t *buffer, pmix_data_type_t type);
pmix_status_t pmix_bfrop_store_data_type(pmix_buffer_t *buffer, pmix_data_type_t type);
pmix_status_t pmix_bfrop_get_data_type(pmix_buffer_t *buffer, pmix_data_type_t *type);

Просмотреть файл

@ -10,6 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2015 Intel, Inc. All rights reserved.
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -45,7 +46,7 @@ char* pmix_bfrop_buffer_extend(pmix_buffer_t *buffer, size_t bytes_to_add)
}
required = buffer->bytes_used + bytes_to_add;
if(required >= (size_t)pmix_bfrop_threshold_size) {
if (required >= pmix_bfrop_threshold_size) {
to_alloc = ((required + pmix_bfrop_threshold_size - 1)
/ pmix_bfrop_threshold_size) * pmix_bfrop_threshold_size;
} else {
@ -108,13 +109,13 @@ bool pmix_bfrop_too_small(pmix_buffer_t *buffer, size_t bytes_reqd)
return false;
}
int pmix_bfrop_store_data_type(pmix_buffer_t *buffer, pmix_data_type_t type)
pmix_status_t pmix_bfrop_store_data_type(pmix_buffer_t *buffer, pmix_data_type_t type)
{
/* Lookup the pack function for the actual pmix_data_type type and call it */
return pmix_bfrop_pack_datatype(buffer, &type, 1, PMIX_INT);
}
int pmix_bfrop_get_data_type(pmix_buffer_t *buffer, pmix_data_type_t *type)
pmix_status_t pmix_bfrop_get_data_type(pmix_buffer_t *buffer, pmix_data_type_t *type)
{
int32_t n=1;
return pmix_bfrop_unpack_datatype(buffer, type, &n, PMIX_INT);

Просмотреть файл

@ -14,6 +14,7 @@
* Copyright (c) 2014-2015 Intel, Inc. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -38,13 +39,16 @@
* globals
*/
bool pmix_bfrop_initialized = false;
int pmix_bfrop_initial_size = 0;
int pmix_bfrop_threshold_size = 0;
size_t pmix_bfrop_initial_size = 0;
size_t pmix_bfrop_threshold_size = 0;
pmix_pointer_array_t pmix_bfrop_types = {{0}};
pmix_data_type_t pmix_bfrop_num_reg_types = PMIX_UNDEF;
static pmix_bfrop_buffer_type_t pmix_default_buf_type = PMIX_BFROP_BUFFER_NON_DESC;
pmix_bfrop_t pmix_bfrop = {
PMIX_EXPORT pmix_status_t pmix_bfrop_open(void);
PMIX_EXPORT pmix_status_t pmix_bfrop_close(void);
PMIX_EXPORT pmix_bfrop_t pmix_bfrop = {
pmix_bfrop_pack,
pmix_bfrop_unpack,
pmix_bfrop_copy,

Просмотреть файл

@ -15,6 +15,7 @@
* and Technology (RIST). All rights reserved.
* Copyright (c) 2016 Mellanox Technologies, Inc.
* All rights reserved.
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -35,11 +36,11 @@
#include "src/util/output.h"
#include "src/buffer_ops/internal.h"
int pmix_bfrop_pack(pmix_buffer_t *buffer,
pmix_status_t pmix_bfrop_pack(pmix_buffer_t *buffer,
const void *src, int32_t num_vals,
pmix_data_type_t type)
{
int rc;
pmix_status_t rc;
/* check for error */
if (NULL == buffer) {
@ -60,11 +61,11 @@ int pmix_bfrop_pack(pmix_buffer_t *buffer,
return pmix_bfrop_pack_buffer(buffer, src, num_vals, type);
}
int pmix_bfrop_pack_buffer(pmix_buffer_t *buffer,
pmix_status_t pmix_bfrop_pack_buffer(pmix_buffer_t *buffer,
const void *src, int32_t num_vals,
pmix_data_type_t type)
{
int rc;
pmix_status_t rc;
pmix_bfrop_type_info_t *info;
pmix_output_verbose(20, pmix_globals.debug_output, "pmix_bfrop_pack_buffer( %p, %p, %lu, %d )\n",
@ -92,7 +93,7 @@ int pmix_bfrop_pack_buffer(pmix_buffer_t *buffer,
/*
* BOOL
*/
int pmix_bfrop_pack_bool(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_bool(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type)
{
uint8_t *dst;
@ -124,10 +125,10 @@ int pmix_bfrop_pack_bool(pmix_buffer_t *buffer, const void *src,
/*
* INT
*/
int pmix_bfrop_pack_int(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_int(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type)
{
int ret;
pmix_status_t ret;
/* System types need to always be described so we can properly
unpack them */
@ -142,10 +143,10 @@ int pmix_bfrop_pack_int(pmix_buffer_t *buffer, const void *src,
/*
* SIZE_T
*/
int pmix_bfrop_pack_sizet(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_sizet(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type)
{
int ret;
pmix_status_t ret;
/* System types need to always be described so we can properly
unpack them. */
@ -159,10 +160,10 @@ int pmix_bfrop_pack_sizet(pmix_buffer_t *buffer, const void *src,
/*
* PID_T
*/
int pmix_bfrop_pack_pid(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_pid(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type)
{
int ret;
pmix_status_t ret;
/* System types need to always be described so we can properly
unpack them. */
@ -180,7 +181,7 @@ int pmix_bfrop_pack_pid(pmix_buffer_t *buffer, const void *src,
/*
* BYTE, CHAR, INT8
*/
int pmix_bfrop_pack_byte(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_byte(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type)
{
char *dst;
@ -204,7 +205,7 @@ int pmix_bfrop_pack_byte(pmix_buffer_t *buffer, const void *src,
/*
* INT16
*/
int pmix_bfrop_pack_int16(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_int16(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type)
{
int32_t i;
@ -231,7 +232,7 @@ int pmix_bfrop_pack_int16(pmix_buffer_t *buffer, const void *src,
/*
* INT32
*/
int pmix_bfrop_pack_int32(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_int32(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type)
{
int32_t i;
@ -255,7 +256,7 @@ int pmix_bfrop_pack_int32(pmix_buffer_t *buffer, const void *src,
return PMIX_SUCCESS;
}
int pmix_bfrop_pack_datatype(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_datatype(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type)
{
return pmix_bfrop_pack_int32(buffer, src, num_vals, type);
@ -264,7 +265,7 @@ int pmix_bfrop_pack_datatype(pmix_buffer_t *buffer, const void *src,
/*
* INT64
*/
int pmix_bfrop_pack_int64(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_int64(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type)
{
int32_t i;
@ -293,7 +294,7 @@ int pmix_bfrop_pack_int64(pmix_buffer_t *buffer, const void *src,
/*
* STRING
*/
int pmix_bfrop_pack_string(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_string(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type)
{
int ret = PMIX_SUCCESS;
@ -322,10 +323,10 @@ int pmix_bfrop_pack_string(pmix_buffer_t *buffer, const void *src,
}
/* FLOAT */
int pmix_bfrop_pack_float(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_float(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type)
{
int ret = PMIX_SUCCESS;
pmix_status_t ret = PMIX_SUCCESS;
int32_t i;
float *ssrc = (float*)src;
char *convert;
@ -343,10 +344,10 @@ int pmix_bfrop_pack_float(pmix_buffer_t *buffer, const void *src,
}
/* DOUBLE */
int pmix_bfrop_pack_double(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_double(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type)
{
int ret = PMIX_SUCCESS;
pmix_status_t ret = PMIX_SUCCESS;
int32_t i;
double *ssrc = (double*)src;
char *convert;
@ -364,11 +365,11 @@ int pmix_bfrop_pack_double(pmix_buffer_t *buffer, const void *src,
}
/* TIMEVAL */
int pmix_bfrop_pack_timeval(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_timeval(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type)
{
int64_t tmp[2];
int ret = PMIX_SUCCESS;
pmix_status_t ret = PMIX_SUCCESS;
int32_t i;
struct timeval *ssrc = (struct timeval *)src;
@ -384,10 +385,10 @@ int pmix_bfrop_pack_timeval(pmix_buffer_t *buffer, const void *src,
}
/* TIME */
int pmix_bfrop_pack_time(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_time(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type)
{
int ret = PMIX_SUCCESS;
pmix_status_t ret = PMIX_SUCCESS;
int32_t i;
time_t *ssrc = (time_t *)src;
uint64_t ui64;
@ -407,10 +408,10 @@ int pmix_bfrop_pack_time(pmix_buffer_t *buffer, const void *src,
/* PACK FUNCTIONS FOR GENERIC PMIX TYPES */
static int pack_val(pmix_buffer_t *buffer,
static pmix_status_t pack_val(pmix_buffer_t *buffer,
pmix_value_t *p)
{
int ret;
pmix_status_t ret;
switch (p->type) {
case PMIX_BOOL:
@ -523,12 +524,12 @@ static int pack_val(pmix_buffer_t *buffer,
/*
* PMIX_VALUE
*/
int pmix_bfrop_pack_value(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_value(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type)
{
pmix_value_t *ptr;
int32_t i;
int ret;
pmix_status_t ret;
ptr = (pmix_value_t *) src;
@ -547,12 +548,12 @@ int pmix_bfrop_pack_value(pmix_buffer_t *buffer, const void *src,
}
int pmix_bfrop_pack_info(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_info(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type)
{
pmix_info_t *info;
int32_t i;
int ret;
pmix_status_t ret;
char *foo;
info = (pmix_info_t *) src;
@ -575,12 +576,12 @@ int pmix_bfrop_pack_info(pmix_buffer_t *buffer, const void *src,
return PMIX_SUCCESS;
}
int pmix_bfrop_pack_pdata(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_pdata(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type)
{
pmix_pdata_t *pdata;
int32_t i;
int ret;
pmix_status_t ret;
char *foo;
pdata = (pmix_pdata_t *) src;
@ -607,12 +608,12 @@ int pmix_bfrop_pack_pdata(pmix_buffer_t *buffer, const void *src,
return PMIX_SUCCESS;
}
int pmix_bfrop_pack_buf(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_buf(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type)
{
pmix_buffer_t **ptr;
int32_t i;
int ret;
pmix_status_t ret;
ptr = (pmix_buffer_t **) src;
@ -631,12 +632,12 @@ int pmix_bfrop_pack_buf(pmix_buffer_t *buffer, const void *src,
return PMIX_SUCCESS;
}
int pmix_bfrop_pack_proc(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_proc(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type)
{
pmix_proc_t *proc;
int32_t i;
int ret;
pmix_status_t ret;
proc = (pmix_proc_t *) src;
@ -652,12 +653,12 @@ int pmix_bfrop_pack_proc(pmix_buffer_t *buffer, const void *src,
return PMIX_SUCCESS;
}
int pmix_bfrop_pack_app(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_app(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type)
{
pmix_app_t *app;
int32_t i, j, nvals;
int ret;
pmix_status_t ret;
app = (pmix_app_t *) src;
@ -702,12 +703,12 @@ int pmix_bfrop_pack_app(pmix_buffer_t *buffer, const void *src,
}
int pmix_bfrop_pack_kval(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_kval(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type)
{
pmix_kval_t *ptr;
int32_t i;
int ret;
pmix_status_t ret;
ptr = (pmix_kval_t *) src;
@ -725,12 +726,12 @@ int pmix_bfrop_pack_kval(pmix_buffer_t *buffer, const void *src,
return PMIX_SUCCESS;
}
int pmix_bfrop_pack_array(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_array(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type)
{
pmix_info_array_t *ptr;
int32_t i;
int ret;
pmix_status_t ret;
ptr = (pmix_info_array_t *) src;
@ -751,12 +752,13 @@ int pmix_bfrop_pack_array(pmix_buffer_t *buffer, const void *src,
}
#if PMIX_HAVE_HWLOC
int pmix_bfrop_pack_topo(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_topo(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type)
{
/* NOTE: hwloc defines topology_t as a pointer to a struct! */
hwloc_topology_t t, *tarray = (hwloc_topology_t*)src;
int rc, i;
pmix_status_t rc;
int i;
char *xmlbuffer=NULL;
int len;
struct hwloc_topology_support *support;
@ -808,12 +810,12 @@ int pmix_bfrop_pack_topo(pmix_buffer_t *buffer, const void *src,
}
#endif
int pmix_bfrop_pack_modex(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_modex(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type)
{
pmix_modex_data_t *ptr;
int32_t i;
int ret;
pmix_status_t ret;
ptr = (pmix_modex_data_t *) src;
@ -830,16 +832,16 @@ int pmix_bfrop_pack_modex(pmix_buffer_t *buffer, const void *src,
return PMIX_SUCCESS;
}
int pmix_bfrop_pack_persist(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_persist(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type)
{
return pmix_bfrop_pack_int(buffer, src, num_vals, PMIX_INT);
}
int pmix_bfrop_pack_bo(pmix_buffer_t *buffer, const void *src,
pmix_status_t pmix_bfrop_pack_bo(pmix_buffer_t *buffer, const void *src,
int32_t num_vals, pmix_data_type_t type)
{
int ret;
pmix_status_t ret;
int i;
pmix_byte_object_t *bo;

Просмотреть файл

@ -13,7 +13,7 @@
* Copyright (c) 2014-2016 Intel, Inc. All rights reserved.
* Copyright (c) 2016 Mellanox Technologies, Inc.
* All rights reserved.
*
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -23,7 +23,7 @@
#include <src/include/pmix_config.h>
#include <src/include/pmix_stdint.h>
#include <pmix/autogen/pmix_stdint.h>
#include <stdio.h>
#ifdef HAVE_TIME_H
@ -32,7 +32,7 @@
#include "src/buffer_ops/internal.h"
int pmix_bfrop_print(char **output, char *prefix, void *src, pmix_data_type_t type)
pmix_status_t pmix_bfrop_print(char **output, char *prefix, void *src, pmix_data_type_t type)
{
pmix_bfrop_type_info_t *info;
@ -53,7 +53,7 @@ int pmix_bfrop_print(char **output, char *prefix, void *src, pmix_data_type_t ty
/*
* STANDARD PRINT FUNCTIONS FOR SYSTEM TYPES
*/
int pmix_bfrop_print_bool(char **output, char *prefix, bool *src, pmix_data_type_t type)
pmix_status_t pmix_bfrop_print_bool(char **output, char *prefix, bool *src, pmix_data_type_t type)
{
char *prefx;
@ -79,7 +79,7 @@ int pmix_bfrop_print_bool(char **output, char *prefix, bool *src, pmix_data_type
return PMIX_SUCCESS;
}
int pmix_bfrop_print_byte(char **output, char *prefix, uint8_t *src, pmix_data_type_t type)
pmix_status_t pmix_bfrop_print_byte(char **output, char *prefix, uint8_t *src, pmix_data_type_t type)
{
char *prefx;
@ -104,7 +104,7 @@ int pmix_bfrop_print_byte(char **output, char *prefix, uint8_t *src, pmix_data_t
return PMIX_SUCCESS;
}
int pmix_bfrop_print_string(char **output, char *prefix, char *src, pmix_data_type_t type)
pmix_status_t pmix_bfrop_print_string(char **output, char *prefix, char *src, pmix_data_type_t type)
{
char *prefx;
@ -129,7 +129,7 @@ int pmix_bfrop_print_string(char **output, char *prefix, char *src, pmix_data_ty
return PMIX_SUCCESS;
}
int pmix_bfrop_print_size(char **output, char *prefix, size_t *src, pmix_data_type_t type)
pmix_status_t pmix_bfrop_print_size(char **output, char *prefix, size_t *src, pmix_data_type_t type)
{
char *prefx;
@ -154,7 +154,7 @@ int pmix_bfrop_print_size(char **output, char *prefix, size_t *src, pmix_data_ty
return PMIX_SUCCESS;
}
int pmix_bfrop_print_pid(char **output, char *prefix, pid_t *src, pmix_data_type_t type)
pmix_status_t pmix_bfrop_print_pid(char **output, char *prefix, pid_t *src, pmix_data_type_t type)
{
char *prefx;
@ -178,7 +178,7 @@ int pmix_bfrop_print_pid(char **output, char *prefix, pid_t *src, pmix_data_type
return PMIX_SUCCESS;
}
int pmix_bfrop_print_int(char **output, char *prefix, int *src, pmix_data_type_t type)
pmix_status_t pmix_bfrop_print_int(char **output, char *prefix, int *src, pmix_data_type_t type)
{
char *prefx;
@ -203,7 +203,7 @@ int pmix_bfrop_print_int(char **output, char *prefix, int *src, pmix_data_type_t
return PMIX_SUCCESS;
}
int pmix_bfrop_print_uint(char **output, char *prefix, int *src, pmix_data_type_t type)
pmix_status_t pmix_bfrop_print_uint(char **output, char *prefix, uint *src, pmix_data_type_t type)
{
char *prefx;
@ -228,7 +228,7 @@ int pmix_bfrop_print_uint(char **output, char *prefix, int *src, pmix_data_type_
return PMIX_SUCCESS;
}
int pmix_bfrop_print_uint8(char **output, char *prefix, uint8_t *src, pmix_data_type_t type)
pmix_status_t pmix_bfrop_print_uint8(char **output, char *prefix, uint8_t *src, pmix_data_type_t type)
{
char *prefx;
@ -253,7 +253,7 @@ int pmix_bfrop_print_uint8(char **output, char *prefix, uint8_t *src, pmix_data_
return PMIX_SUCCESS;
}
int pmix_bfrop_print_uint16(char **output, char *prefix, uint16_t *src, pmix_data_type_t type)
pmix_status_t pmix_bfrop_print_uint16(char **output, char *prefix, uint16_t *src, pmix_data_type_t type)
{
char *prefx;
@ -278,7 +278,7 @@ int pmix_bfrop_print_uint16(char **output, char *prefix, uint16_t *src, pmix_dat
return PMIX_SUCCESS;
}
int pmix_bfrop_print_uint32(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_uint32(char **output, char *prefix,
uint32_t *src, pmix_data_type_t type)
{
char *prefx;
@ -304,7 +304,7 @@ int pmix_bfrop_print_uint32(char **output, char *prefix,
return PMIX_SUCCESS;
}
int pmix_bfrop_print_int8(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_int8(char **output, char *prefix,
int8_t *src, pmix_data_type_t type)
{
char *prefx;
@ -330,7 +330,7 @@ int pmix_bfrop_print_int8(char **output, char *prefix,
return PMIX_SUCCESS;
}
int pmix_bfrop_print_int16(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_int16(char **output, char *prefix,
int16_t *src, pmix_data_type_t type)
{
char *prefx;
@ -356,7 +356,7 @@ int pmix_bfrop_print_int16(char **output, char *prefix,
return PMIX_SUCCESS;
}
int pmix_bfrop_print_int32(char **output, char *prefix, int32_t *src, pmix_data_type_t type)
pmix_status_t pmix_bfrop_print_int32(char **output, char *prefix, int32_t *src, pmix_data_type_t type)
{
char *prefx;
@ -380,7 +380,7 @@ int pmix_bfrop_print_int32(char **output, char *prefix, int32_t *src, pmix_data_
return PMIX_SUCCESS;
}
int pmix_bfrop_print_uint64(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_uint64(char **output, char *prefix,
uint64_t *src,
pmix_data_type_t type)
{
@ -407,7 +407,7 @@ int pmix_bfrop_print_uint64(char **output, char *prefix,
return PMIX_SUCCESS;
}
int pmix_bfrop_print_int64(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_int64(char **output, char *prefix,
int64_t *src,
pmix_data_type_t type)
{
@ -434,7 +434,7 @@ int pmix_bfrop_print_int64(char **output, char *prefix,
return PMIX_SUCCESS;
}
int pmix_bfrop_print_float(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_float(char **output, char *prefix,
float *src, pmix_data_type_t type)
{
char *prefx;
@ -460,7 +460,7 @@ int pmix_bfrop_print_float(char **output, char *prefix,
return PMIX_SUCCESS;
}
int pmix_bfrop_print_double(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_double(char **output, char *prefix,
double *src, pmix_data_type_t type)
{
char *prefx;
@ -486,7 +486,7 @@ int pmix_bfrop_print_double(char **output, char *prefix,
return PMIX_SUCCESS;
}
int pmix_bfrop_print_time(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_time(char **output, char *prefix,
time_t *src, pmix_data_type_t type)
{
char *prefx;
@ -516,7 +516,7 @@ int pmix_bfrop_print_time(char **output, char *prefix,
return PMIX_SUCCESS;
}
int pmix_bfrop_print_timeval(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_timeval(char **output, char *prefix,
struct timeval *src, pmix_data_type_t type)
{
char *prefx;
@ -548,7 +548,7 @@ int pmix_bfrop_print_timeval(char **output, char *prefix,
/*
* PMIX_VALUE
*/
int pmix_bfrop_print_value(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_value(char **output, char *prefix,
pmix_value_t *src, pmix_data_type_t type)
{
char *prefx;
@ -645,7 +645,7 @@ int pmix_bfrop_print_value(char **output, char *prefix,
return PMIX_SUCCESS;
}
int pmix_bfrop_print_info(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_info(char **output, char *prefix,
pmix_info_t *src, pmix_data_type_t type)
{
char *tmp;
@ -659,7 +659,7 @@ int pmix_bfrop_print_info(char **output, char *prefix,
return PMIX_SUCCESS;
}
int pmix_bfrop_print_pdata(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_pdata(char **output, char *prefix,
pmix_pdata_t *src, pmix_data_type_t type)
{
char *tmp1, *tmp2;
@ -677,19 +677,19 @@ int pmix_bfrop_print_pdata(char **output, char *prefix,
return PMIX_SUCCESS;
}
int pmix_bfrop_print_buf(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_buf(char **output, char *prefix,
pmix_buffer_t *src, pmix_data_type_t type)
{
return PMIX_SUCCESS;
}
int pmix_bfrop_print_app(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_app(char **output, char *prefix,
pmix_app_t *src, pmix_data_type_t type)
{
return PMIX_SUCCESS;
}
int pmix_bfrop_print_proc(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_proc(char **output, char *prefix,
pmix_proc_t *src, pmix_data_type_t type)
{
char *prefx;
@ -702,13 +702,13 @@ int pmix_bfrop_print_proc(char **output, char *prefix,
return PMIX_SUCCESS;
}
int pmix_bfrop_print_kval(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_kval(char **output, char *prefix,
pmix_kval_t *src, pmix_data_type_t type)
{
return PMIX_SUCCESS;
}
int pmix_bfrop_print_array(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_array(char **output, char *prefix,
pmix_info_array_t *src, pmix_data_type_t type)
{
size_t j;
@ -804,7 +804,7 @@ static void print_hwloc_obj(char **output, char *prefix,
*output = tmp2;
}
int pmix_bfrop_print_topo(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_topo(char **output, char *prefix,
hwloc_topology_t src, pmix_data_type_t type)
{
hwloc_obj_t obj;
@ -820,13 +820,13 @@ int pmix_bfrop_print_topo(char **output, char *prefix,
#endif
int pmix_bfrop_print_modex(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_modex(char **output, char *prefix,
pmix_modex_data_t *src, pmix_data_type_t type)
{
return PMIX_SUCCESS;
}
int pmix_bfrop_print_persist(char **output, char *prefix, pmix_persistence_t *src, pmix_data_type_t type)
pmix_status_t pmix_bfrop_print_persist(char **output, char *prefix, pmix_persistence_t *src, pmix_data_type_t type)
{
char *prefx;
@ -851,7 +851,7 @@ int pmix_bfrop_print_persist(char **output, char *prefix, pmix_persistence_t *sr
return PMIX_SUCCESS;
}
int pmix_bfrop_print_bo(char **output, char *prefix,
pmix_status_t pmix_bfrop_print_bo(char **output, char *prefix,
pmix_byte_object_t *src, pmix_data_type_t type)
{
char *prefx;

Просмотреть файл

@ -10,11 +10,12 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2012 Los Alamos National Security, Inc. All rights reserved.
* Copyright (c) 2014-2015 Intel, Inc. All rights reserved.
* Copyright (c) 2014-2016 Intel, Inc. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2016 Mellanox Technologies, Inc.
* All rights reserved.
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -32,10 +33,10 @@
#include "src/buffer_ops/types.h"
#include "src/buffer_ops/internal.h"
int pmix_bfrop_unpack(pmix_buffer_t *buffer, void *dst, int32_t *num_vals,
pmix_status_t pmix_bfrop_unpack(pmix_buffer_t *buffer, void *dst, int32_t *num_vals,
pmix_data_type_t type)
{
int rc, ret;
pmix_status_t rc, ret;
int32_t local_num, n=1;
pmix_data_type_t local_type;
@ -147,7 +148,7 @@ pmix_status_t pmix_bfrop_unpack_buffer(pmix_buffer_t *buffer, void *dst, int32_t
/*
* BOOL
*/
int pmix_bfrop_unpack_bool(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_bool(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type)
{
int32_t i;
@ -207,10 +208,10 @@ pmix_status_t pmix_bfrop_unpack_int(pmix_buffer_t *buffer, void *dest,
/*
* SIZE_T
*/
int pmix_bfrop_unpack_sizet(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_sizet(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type)
{
int ret;
pmix_status_t ret;
pmix_data_type_t remote_type;
if (PMIX_SUCCESS != (ret = pmix_bfrop_get_data_type(buffer, &remote_type))) {
@ -233,10 +234,10 @@ int pmix_bfrop_unpack_sizet(pmix_buffer_t *buffer, void *dest,
/*
* PID_T
*/
int pmix_bfrop_unpack_pid(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_pid(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type)
{
int ret;
pmix_status_t ret;
pmix_data_type_t remote_type;
if (PMIX_SUCCESS != (ret = pmix_bfrop_get_data_type(buffer, &remote_type))) {
@ -280,7 +281,7 @@ pmix_status_t pmix_bfrop_unpack_byte(pmix_buffer_t *buffer, void *dest,
return PMIX_SUCCESS;
}
int pmix_bfrop_unpack_int16(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_int16(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type)
{
int32_t i;
@ -326,13 +327,13 @@ pmix_status_t pmix_bfrop_unpack_int32(pmix_buffer_t *buffer, void *dest,
return PMIX_SUCCESS;
}
int pmix_bfrop_unpack_datatype(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_datatype(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type)
{
return pmix_bfrop_unpack_int32(buffer, dest, num_vals, type);
}
int pmix_bfrop_unpack_int64(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_int64(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type)
{
int32_t i;
@ -382,12 +383,12 @@ pmix_status_t pmix_bfrop_unpack_string(pmix_buffer_t *buffer, void *dest,
return PMIX_SUCCESS;
}
int pmix_bfrop_unpack_float(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_float(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type)
{
int32_t i, n;
float *desttmp = (float*) dest, tmp;
int ret;
pmix_status_t ret;
char *convert;
pmix_output_verbose(20, pmix_globals.debug_output, "pmix_bfrop_unpack_float * %d\n", (int)*num_vals);
@ -412,12 +413,12 @@ int pmix_bfrop_unpack_float(pmix_buffer_t *buffer, void *dest,
return PMIX_SUCCESS;
}
int pmix_bfrop_unpack_double(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_double(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type)
{
int32_t i, n;
double *desttmp = (double*) dest, tmp;
int ret;
pmix_status_t ret;
char *convert;
pmix_output_verbose(20, pmix_globals.debug_output, "pmix_bfrop_unpack_double * %d\n", (int)*num_vals);
@ -442,13 +443,13 @@ int pmix_bfrop_unpack_double(pmix_buffer_t *buffer, void *dest,
return PMIX_SUCCESS;
}
int pmix_bfrop_unpack_timeval(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_timeval(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type)
{
int32_t i, n;
int64_t tmp[2];
struct timeval *desttmp = (struct timeval *) dest, tt;
int ret;
pmix_status_t ret;
pmix_output_verbose(20, pmix_globals.debug_output, "pmix_bfrop_unpack_timeval * %d\n", (int)*num_vals);
/* check to see if there's enough data in buffer */
@ -469,12 +470,12 @@ int pmix_bfrop_unpack_timeval(pmix_buffer_t *buffer, void *dest,
return PMIX_SUCCESS;
}
int pmix_bfrop_unpack_time(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_time(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type)
{
int32_t i, n;
time_t *desttmp = (time_t *) dest, tmp;
int ret;
pmix_status_t ret;
uint64_t ui64;
/* time_t is a system-dependent size, so cast it
@ -507,7 +508,7 @@ int pmix_bfrop_unpack_time(pmix_buffer_t *buffer, void *dest,
*/
static pmix_status_t unpack_val(pmix_buffer_t *buffer, pmix_value_t *val)
{
int m;
int32_t m;
pmix_status_t ret;
m = 1;
@ -644,12 +645,12 @@ pmix_status_t pmix_bfrop_unpack_value(pmix_buffer_t *buffer, void *dest,
return PMIX_SUCCESS;
}
int pmix_bfrop_unpack_info(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_info(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type)
{
pmix_info_t *ptr;
int32_t i, n, m;
int ret;
pmix_status_t ret;
char *tmp;
pmix_output_verbose(20, pmix_globals.debug_output,
@ -689,12 +690,12 @@ int pmix_bfrop_unpack_info(pmix_buffer_t *buffer, void *dest,
return PMIX_SUCCESS;
}
int pmix_bfrop_unpack_pdata(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_pdata(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type)
{
pmix_pdata_t *ptr;
int32_t i, n, m;
int ret;
pmix_status_t ret;
char *tmp;
pmix_output_verbose(20, pmix_globals.debug_output,
@ -738,12 +739,12 @@ int pmix_bfrop_unpack_pdata(pmix_buffer_t *buffer, void *dest,
return PMIX_SUCCESS;
}
int pmix_bfrop_unpack_buf(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_buf(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type)
{
pmix_buffer_t **ptr;
int32_t i, n, m;
int ret;
pmix_status_t ret;
size_t nbytes;
ptr = (pmix_buffer_t **) dest;
@ -777,12 +778,12 @@ int pmix_bfrop_unpack_buf(pmix_buffer_t *buffer, void *dest,
return PMIX_SUCCESS;
}
int pmix_bfrop_unpack_proc(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_proc(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type)
{
pmix_proc_t *ptr;
int32_t i, n, m;
int ret;
pmix_status_t ret;
char *tmp;
pmix_output_verbose(20, pmix_globals.debug_output,
@ -815,12 +816,12 @@ int pmix_bfrop_unpack_proc(pmix_buffer_t *buffer, void *dest,
return PMIX_SUCCESS;
}
int pmix_bfrop_unpack_app(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_app(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type)
{
pmix_app_t *ptr;
int32_t i, k, n, m;
int ret;
pmix_status_t ret;
int32_t nval;
char *tmp;
@ -894,7 +895,7 @@ int pmix_bfrop_unpack_app(pmix_buffer_t *buffer, void *dest,
return PMIX_SUCCESS;
}
int pmix_bfrop_unpack_kval(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_kval(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type)
{
pmix_kval_t *ptr;
@ -927,12 +928,12 @@ int pmix_bfrop_unpack_kval(pmix_buffer_t *buffer, void *dest,
return PMIX_SUCCESS;
}
int pmix_bfrop_unpack_array(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_array(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type)
{
pmix_info_array_t *ptr;
int32_t i, n, m;
int ret;
pmix_status_t ret;
pmix_output_verbose(20, pmix_globals.debug_output,
"pmix_bfrop_unpack: %d info arrays", *num_vals);
@ -950,7 +951,7 @@ int pmix_bfrop_unpack_array(pmix_buffer_t *buffer, void *dest,
return ret;
}
if (0 < ptr[i].size) {
ptr[i].array = (struct pmix_info *)malloc(ptr[i].size * sizeof(pmix_info_t));
ptr[i].array = (pmix_info_t*)malloc(ptr[i].size * sizeof(pmix_info_t));
m=ptr[i].size;
if (PMIX_SUCCESS != (ret = pmix_bfrop_unpack_value(buffer, ptr[i].array, &m, PMIX_INFO))) {
return ret;
@ -961,13 +962,14 @@ int pmix_bfrop_unpack_array(pmix_buffer_t *buffer, void *dest,
}
#if PMIX_HAVE_HWLOC
int pmix_bfrop_unpack_topo(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_topo(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals,
pmix_data_type_t type)
{
/* NOTE: hwloc defines topology_t as a pointer to a struct! */
hwloc_topology_t t, *tarray = (hwloc_topology_t*)dest;
int rc=PMIX_SUCCESS, i, cnt, j;
pmix_status_t rc=PMIX_SUCCESS;
int32_t cnt, i, j;
char *xmlbuffer;
struct hwloc_topology_support *support;
@ -1042,12 +1044,12 @@ int pmix_bfrop_unpack_topo(pmix_buffer_t *buffer, void *dest,
}
#endif
int pmix_bfrop_unpack_modex(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_modex(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type)
{
pmix_modex_data_t *ptr;
int32_t i, n, m;
int ret;
pmix_status_t ret;
pmix_output_verbose(20, pmix_globals.debug_output,
"pmix_bfrop_unpack: %d modex", *num_vals);
@ -1074,18 +1076,18 @@ int pmix_bfrop_unpack_modex(pmix_buffer_t *buffer, void *dest,
}
int pmix_bfrop_unpack_persist(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_persist(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type)
{
return pmix_bfrop_unpack_int(buffer, dest, num_vals, PMIX_INT);
}
int pmix_bfrop_unpack_bo(pmix_buffer_t *buffer, void *dest,
pmix_status_t pmix_bfrop_unpack_bo(pmix_buffer_t *buffer, void *dest,
int32_t *num_vals, pmix_data_type_t type)
{
pmix_byte_object_t *ptr;
int32_t i, n, m;
int ret;
pmix_status_t ret;
pmix_output_verbose(20, pmix_globals.debug_output,
"pmix_bfrop_unpack: %d byte_object", *num_vals);

Просмотреть файл

@ -12,6 +12,7 @@
* Copyright (c) 2014-2015 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2014-2015 Intel, Inc. All rights reserved
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -296,7 +297,7 @@ pmix_status_t pmix_hash_table_set_value_uint64(pmix_hash_table_t* ht,
}
int pmix_hash_table_remove_value_uint64(pmix_hash_table_t* ht, uint64_t key)
pmix_status_t pmix_hash_table_remove_value_uint64(pmix_hash_table_t* ht, uint64_t key)
{
pmix_list_t* list = ht->ht_table + (key & ht->ht_mask);
pmix_uint64_hash_node_t *node;
@ -362,7 +363,7 @@ static inline uint32_t pmix_hash_value(size_t mask, const void *key,
return (uint32_t) (crc & mask);
}
int pmix_hash_table_get_value_ptr(pmix_hash_table_t* ht, const void* key,
pmix_status_t pmix_hash_table_get_value_ptr(pmix_hash_table_t* ht, const void* key,
size_t key_size, void **ptr)
{
pmix_list_t* list = ht->ht_table + pmix_hash_value(ht->ht_mask, key,
@ -389,7 +390,7 @@ int pmix_hash_table_get_value_ptr(pmix_hash_table_t* ht, const void* key,
}
int pmix_hash_table_set_value_ptr(pmix_hash_table_t* ht, const void* key,
pmix_status_t pmix_hash_table_set_value_ptr(pmix_hash_table_t* ht, const void* key,
size_t key_size, void* value)
{
pmix_list_t* list = ht->ht_table + pmix_hash_value(ht->ht_mask, key,
@ -430,7 +431,7 @@ int pmix_hash_table_set_value_ptr(pmix_hash_table_t* ht, const void* key,
}
int pmix_hash_table_remove_value_ptr(pmix_hash_table_t* ht,
pmix_status_t pmix_hash_table_remove_value_ptr(pmix_hash_table_t* ht,
const void* key, size_t key_size)
{
pmix_list_t* list = ht->ht_table + pmix_hash_value(ht->ht_mask,
@ -462,7 +463,7 @@ int pmix_hash_table_remove_value_ptr(pmix_hash_table_t* ht,
}
int
pmix_status_t
pmix_hash_table_get_first_key_uint32(pmix_hash_table_t *ht, uint32_t *key,
void **value, void **node)
{
@ -489,7 +490,7 @@ pmix_hash_table_get_first_key_uint32(pmix_hash_table_t *ht, uint32_t *key,
}
int
pmix_status_t
pmix_hash_table_get_next_key_uint32(pmix_hash_table_t *ht, uint32_t *key,
void **value, void *in_node,
void **out_node)
@ -534,7 +535,7 @@ pmix_hash_table_get_next_key_uint32(pmix_hash_table_t *ht, uint32_t *key,
}
int
pmix_status_t
pmix_hash_table_get_first_key_uint64(pmix_hash_table_t *ht, uint64_t *key,
void **value, void **node)
{
@ -561,7 +562,7 @@ pmix_hash_table_get_first_key_uint64(pmix_hash_table_t *ht, uint64_t *key,
}
int
pmix_status_t
pmix_hash_table_get_next_key_uint64(pmix_hash_table_t *ht, uint64_t *key,
void **value, void *in_node,
void **out_node)

Просмотреть файл

@ -14,7 +14,7 @@
* and Technology (RIST). All rights reserved.
* Copyright (c) 2016 Mellanox Technologies, Inc.
* All rights reserved.
*
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -73,12 +73,12 @@ typedef struct pmix_hash_table_t pmix_hash_table_t;
*
*/
PMIX_DECLSPEC int pmix_hash_table_init(pmix_hash_table_t* ht, size_t table_size);
PMIX_DECLSPEC pmix_status_t pmix_hash_table_init(pmix_hash_table_t* ht, size_t table_size);
/**
* Alternative form
*/
PMIX_DECLSPEC int pmix_hash_table_init2(pmix_hash_table_t* ht, size_t estimated_max_size,
PMIX_DECLSPEC pmix_status_t pmix_hash_table_init2(pmix_hash_table_t* ht, size_t estimated_max_size,
int density_numer, int density_denom,
int growth_numer, int growth_denom);

Просмотреть файл

@ -266,7 +266,8 @@ PMIX_EXPORT int PMI_Get_size(int *size)
PMIX_INFO_CONSTRUCT(&info[0]);
PMIX_INFO_LOAD(&info[0], PMIX_OPTIONAL, &val_optinal, PMIX_BOOL);
if (PMIX_SUCCESS == PMIx_Get(&proc, PMIX_JOB_SIZE, info, 1, &val)) {
rc = PMIx_Get(&proc, PMIX_JOB_SIZE, info, 1, &val);
if (PMIX_SUCCESS == rc) {
rc = convert_int(size, val);
PMIX_VALUE_RELEASE(val);
}
@ -311,7 +312,8 @@ PMIX_EXPORT int PMI_Get_universe_size(int *size)
PMIX_INFO_CONSTRUCT(&info[0]);
PMIX_INFO_LOAD(&info[0], PMIX_OPTIONAL, &val_optinal, PMIX_BOOL);
if (PMIX_SUCCESS == PMIx_Get(&proc, PMIX_UNIV_SIZE, info, 1, &val)) {
rc = PMIx_Get(&proc, PMIX_UNIV_SIZE, info, 1, &val);
if (PMIX_SUCCESS == rc) {
rc = convert_int(size, val);
PMIX_VALUE_RELEASE(val);
}
@ -344,7 +346,8 @@ PMIX_EXPORT int PMI_Get_appnum(int *appnum)
PMIX_INFO_CONSTRUCT(&info[0]);
PMIX_INFO_LOAD(&info[0], PMIX_OPTIONAL, &val_optinal, PMIX_BOOL);
if (PMIX_SUCCESS == PMIx_Get(&proc, PMIX_APPNUM, info, 1, &val)) {
rc = PMIx_Get(&proc, PMIX_APPNUM, info, 1, &val);
if (PMIX_SUCCESS == rc) {
rc = convert_int(appnum, val);
PMIX_VALUE_RELEASE(val);
}
@ -491,7 +494,8 @@ PMIX_EXPORT int PMI_Get_clique_size(int *size)
PMIX_INFO_CONSTRUCT(&info[0]);
PMIX_INFO_LOAD(&info[0], PMIX_OPTIONAL, &val_optinal, PMIX_BOOL);
if (PMIX_SUCCESS == PMIx_Get(&myproc, PMIX_LOCAL_SIZE, info, 1, &val)) {
rc = PMIx_Get(&myproc, PMIX_LOCAL_SIZE, info, 1, &val);
if (PMIX_SUCCESS == rc) {
rc = convert_int(size, val);
PMIX_VALUE_RELEASE(val);
}
@ -514,7 +518,8 @@ PMIX_EXPORT int PMI_Get_clique_ranks(int ranks[], int length)
return PMI_ERR_INVALID_ARGS;
}
if (PMIX_SUCCESS == PMIx_Get(&myproc, PMIX_LOCAL_PEERS, NULL, 0, &val)) {
rc = PMIx_Get(&myproc, PMIX_LOCAL_PEERS, NULL, 0, &val);
if (PMIX_SUCCESS == rc) {
/* kv will contain a string of comma-separated
* ranks on my node */
rks = pmix_argv_split(val->data.string, ',');

Просмотреть файл

@ -7,6 +7,7 @@
* All rights reserved.
* Copyright (c) 2016 Mellanox Technologies, Inc.
* All rights reserved.
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -17,7 +18,7 @@
#include <src/include/pmix_config.h>
#include <src/include/types.h>
#include <src/include/pmix_stdint.h>
#include <pmix/autogen/pmix_stdint.h>
#include <src/include/pmix_socket_errno.h>
#include <pmix.h>
@ -235,10 +236,11 @@ PMIX_EXPORT const char* PMIx_Get_version(void)
return pmix_version_string;
}
PMIX_EXPORT int PMIx_Init(pmix_proc_t *proc)
PMIX_EXPORT pmix_status_t PMIx_Init(pmix_proc_t *proc)
{
char **uri, *evar;
int rc, debug_level;
pmix_status_t rc;
int debug_level;
struct sockaddr_un address;
pmix_nspace_t *nsptr;
pmix_cb_t cb;
@ -481,7 +483,7 @@ PMIX_EXPORT pmix_status_t PMIx_Finalize(void)
return PMIX_SUCCESS;
}
PMIX_EXPORT int PMIx_Abort(int flag, const char msg[],
PMIX_EXPORT pmix_status_t PMIx_Abort(int flag, const char msg[],
pmix_proc_t procs[], size_t nprocs)
{
pmix_buffer_t *bfr;
@ -1302,7 +1304,7 @@ static void regevents_cbfunc(struct pmix_peer_t *peer, pmix_usock_hdr_t *hdr,
cnt = 1;
if ((PMIX_SUCCESS != (rc = pmix_bfrop.unpack(buf, &ret, &cnt, PMIX_INT))) ||
(PMIX_SUCCESS != ret)) {
PMIX_ERROR_LOG(rc);
/* This is not an actual error since the server may not support registration events */
/* remove the err handler and call the error handler reg completion callback fn.*/
rc = pmix_remove_errhandler(cb->errhandler_ref);
/* call the callback with error */

Просмотреть файл

@ -7,7 +7,7 @@
* All rights reserved.
* Copyright (c) 2016 Mellanox Technologies, Inc.
* All rights reserved.
*
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -18,7 +18,7 @@
#include <src/include/pmix_config.h>
#include <src/include/types.h>
#include <src/include/pmix_stdint.h>
#include <pmix/autogen/pmix_stdint.h>
#include <pmix.h>
@ -59,12 +59,12 @@
/* callback for wait completion */
static void wait_cbfunc(struct pmix_peer_t *pr, pmix_usock_hdr_t *hdr,
pmix_buffer_t *buf, void *cbdata);
static void op_cbfunc(int status, void *cbdata);
static void op_cbfunc(pmix_status_t status, void *cbdata);
PMIX_EXPORT int PMIx_Connect(const pmix_proc_t procs[], size_t nprocs,
PMIX_EXPORT pmix_status_t PMIx_Connect(const pmix_proc_t procs[], size_t nprocs,
const pmix_info_t info[], size_t ninfo)
{
int rc;
pmix_status_t rc;
pmix_cb_t *cb;
pmix_output_verbose(2, pmix_globals.debug_output,
@ -172,10 +172,10 @@ PMIX_EXPORT pmix_status_t PMIx_Connect_nb(const pmix_proc_t procs[], size_t npro
return PMIX_SUCCESS;
}
PMIX_EXPORT int PMIx_Disconnect(const pmix_proc_t procs[], size_t nprocs,
PMIX_EXPORT pmix_status_t PMIx_Disconnect(const pmix_proc_t procs[], size_t nprocs,
const pmix_info_t info[], size_t ninfo)
{
int rc;
pmix_status_t rc;
pmix_cb_t *cb;
if (pmix_globals.init_cntr <= 0) {
@ -327,7 +327,7 @@ static void wait_cbfunc(struct pmix_peer_t *pr, pmix_usock_hdr_t *hdr,
}
}
static void op_cbfunc(int status, void *cbdata)
static void op_cbfunc(pmix_status_t status, void *cbdata)
{
pmix_cb_t *cb = (pmix_cb_t*)cbdata;

Просмотреть файл

@ -7,6 +7,7 @@
* All rights reserved.
* Copyright (c) 2016 Mellanox Technologies, Inc.
* All rights reserved.
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -17,7 +18,7 @@
#include <src/include/pmix_config.h>
#include <src/include/types.h>
#include <src/include/pmix_stdint.h>
#include <pmix/autogen/pmix_stdint.h>
#include <pmix.h>
@ -56,20 +57,20 @@
#include "pmix_client_ops.h"
static int unpack_return(pmix_buffer_t *data);
static int pack_fence(pmix_buffer_t *msg, pmix_cmd_t cmd,
static pmix_status_t unpack_return(pmix_buffer_t *data);
static pmix_status_t pack_fence(pmix_buffer_t *msg, pmix_cmd_t cmd,
const pmix_proc_t *procs, size_t nprocs,
const pmix_info_t *info, size_t ninfo);
static void wait_cbfunc(struct pmix_peer_t *pr,
pmix_usock_hdr_t *hdr,
pmix_buffer_t *buf, void *cbdata);
static void op_cbfunc(int status, void *cbdata);
static void op_cbfunc(pmix_status_t status, void *cbdata);
PMIX_EXPORT int PMIx_Fence(const pmix_proc_t procs[], size_t nprocs,
PMIX_EXPORT pmix_status_t PMIx_Fence(const pmix_proc_t procs[], size_t nprocs,
const pmix_info_t info[], size_t ninfo)
{
pmix_cb_t *cb;
int rc;
pmix_status_t rc;
pmix_output_verbose(2, pmix_globals.debug_output,
"pmix: executing fence");
@ -107,13 +108,13 @@ PMIX_EXPORT int PMIx_Fence(const pmix_proc_t procs[], size_t nprocs,
return rc;
}
PMIX_EXPORT int PMIx_Fence_nb(const pmix_proc_t procs[], size_t nprocs,
PMIX_EXPORT pmix_status_t PMIx_Fence_nb(const pmix_proc_t procs[], size_t nprocs,
const pmix_info_t info[], size_t ninfo,
pmix_op_cbfunc_t cbfunc, void *cbdata)
{
pmix_buffer_t *msg;
pmix_cmd_t cmd = PMIX_FENCENB_CMD;
int rc;
pmix_status_t rc;
pmix_cb_t *cb;
pmix_proc_t rg, *rgs;
size_t nrg;
@ -168,7 +169,7 @@ PMIX_EXPORT int PMIx_Fence_nb(const pmix_proc_t procs[], size_t nprocs,
static pmix_status_t unpack_return(pmix_buffer_t *data)
{
pmix_status_t rc;
int ret;
pmix_status_t ret;
int32_t cnt;
pmix_output_verbose(2, pmix_globals.debug_output,
@ -245,7 +246,7 @@ static void wait_cbfunc(struct pmix_peer_t *pr, pmix_usock_hdr_t *hdr,
PMIX_RELEASE(cb);
}
static void op_cbfunc(int status, void *cbdata)
static void op_cbfunc(pmix_status_t status, void *cbdata)
{
pmix_cb_t *cb = (pmix_cb_t*)cbdata;

Просмотреть файл

@ -7,6 +7,7 @@
* All rights reserved.
* Copyright (c) 2016 Mellanox Technologies, Inc.
* All rights reserved.
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -17,7 +18,7 @@
#include <src/include/pmix_config.h>
#include <src/include/types.h>
#include <src/include/pmix_stdint.h>
#include <pmix/autogen/pmix_stdint.h>
#include <pmix.h>
@ -65,14 +66,14 @@ static void _getnbfn(int sd, short args, void *cbdata);
static void _getnb_cbfunc(struct pmix_peer_t *pr, pmix_usock_hdr_t *hdr,
pmix_buffer_t *buf, void *cbdata);
static void _value_cbfunc(int status, pmix_value_t *kv, void *cbdata);
static void _value_cbfunc(pmix_status_t status, pmix_value_t *kv, void *cbdata);
PMIX_EXPORT int PMIx_Get(const pmix_proc_t *proc, const char key[],
PMIX_EXPORT pmix_status_t PMIx_Get(const pmix_proc_t *proc, const char key[],
const pmix_info_t info[], size_t ninfo,
pmix_value_t **val)
{
pmix_cb_t *cb;
int rc;
pmix_status_t rc;
if (pmix_globals.init_cntr <= 0) {
return PMIX_ERR_INIT;
@ -169,7 +170,7 @@ PMIX_EXPORT pmix_status_t PMIx_Get_nb(const pmix_proc_t *proc, const char *key,
return PMIX_SUCCESS;
}
static void _value_cbfunc(int status, pmix_value_t *kv, void *cbdata)
static void _value_cbfunc(pmix_status_t status, pmix_value_t *kv, void *cbdata)
{
pmix_cb_t *cb = (pmix_cb_t*)cbdata;
pmix_status_t rc;
@ -472,7 +473,7 @@ static void _getnbfn(int fd, short flags, void *cbdata)
val->type = PMIX_INFO_ARRAY;
val->data.array.size = nvals;
PMIX_INFO_CREATE(iptr, nvals);
val->data.array.array = (struct pmix_info *)iptr;
val->data.array.array = (pmix_info_t*)iptr;
for (n=0; n < (size_t)results.size && n < nvals; n++) {
if (NULL != (info = (pmix_info_t*)pmix_pointer_array_get_item(&results, n))) {
(void)strncpy(iptr[n].key, info->key, PMIX_MAX_KEYLEN);

Просмотреть файл

@ -7,7 +7,7 @@
* All rights reserved.
* Copyright (c) 2016 Mellanox Technologies, Inc.
* All rights reserved.
*
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -18,7 +18,7 @@
#include <src/include/pmix_config.h>
#include <src/include/types.h>
#include <src/include/pmix_stdint.h>
#include <pmix/autogen/pmix_stdint.h>
#include <pmix.h>
@ -58,10 +58,10 @@
static void wait_cbfunc(struct pmix_peer_t *pr, pmix_usock_hdr_t *hdr,
pmix_buffer_t *buf, void *cbdata);
static void op_cbfunc(int status, void *cbdata);
static void op_cbfunc(pmix_status_t status, void *cbdata);
static void wait_lookup_cbfunc(struct pmix_peer_t *pr, pmix_usock_hdr_t *hdr,
pmix_buffer_t *buf, void *cbdata);
static void lookup_cbfunc(int status, pmix_pdata_t pdata[], size_t ndata,
static void lookup_cbfunc(pmix_status_t status, pmix_pdata_t pdata[], size_t ndata,
void *cbdata);
PMIX_EXPORT pmix_status_t PMIx_Publish(const pmix_info_t info[],
@ -169,10 +169,10 @@ PMIX_EXPORT pmix_status_t PMIx_Publish_nb(const pmix_info_t info[], size_t ninfo
return PMIX_SUCCESS;
}
PMIX_EXPORT int PMIx_Lookup(pmix_pdata_t pdata[], size_t ndata,
PMIX_EXPORT pmix_status_t PMIx_Lookup(pmix_pdata_t pdata[], size_t ndata,
const pmix_info_t info[], size_t ninfo)
{
int rc;
pmix_status_t rc;
pmix_cb_t *cb;
char **keys = NULL;
size_t i;
@ -296,10 +296,10 @@ PMIX_EXPORT pmix_status_t PMIx_Lookup_nb(char **keys,
return PMIX_SUCCESS;
}
PMIX_EXPORT int PMIx_Unpublish(char **keys,
PMIX_EXPORT pmix_status_t PMIx_Unpublish(char **keys,
const pmix_info_t info[], size_t ninfo)
{
int rc;
pmix_status_t rc;
pmix_cb_t *cb;
pmix_output_verbose(2, pmix_globals.debug_output,
@ -421,7 +421,7 @@ static void wait_cbfunc(struct pmix_peer_t *pr, pmix_usock_hdr_t *hdr,
PMIX_RELEASE(cb);
}
static void op_cbfunc(int status, void *cbdata)
static void op_cbfunc(pmix_status_t status, void *cbdata)
{
pmix_cb_t *cb = (pmix_cb_t*)cbdata;
@ -495,7 +495,7 @@ static void wait_lookup_cbfunc(struct pmix_peer_t *pr, pmix_usock_hdr_t *hdr,
PMIX_RELEASE(cb);
}
static void lookup_cbfunc(int status, pmix_pdata_t pdata[], size_t ndata,
static void lookup_cbfunc(pmix_status_t status, pmix_pdata_t pdata[], size_t ndata,
void *cbdata)
{
pmix_cb_t *cb = (pmix_cb_t*)cbdata;

Просмотреть файл

@ -7,7 +7,7 @@
* All rights reserved.
* Copyright (c) 2016 Mellanox Technologies, Inc.
* All rights reserved.
*
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -18,7 +18,7 @@
#include <src/include/pmix_config.h>
#include <src/include/types.h>
#include <src/include/pmix_stdint.h>
#include <pmix/autogen/pmix_stdint.h>
#include <pmix.h>
@ -58,13 +58,13 @@
static void wait_cbfunc(struct pmix_peer_t *pr, pmix_usock_hdr_t *hdr,
pmix_buffer_t *buf, void *cbdata);
static void spawn_cbfunc(int status, char nspace[], void *cbdata);
static void spawn_cbfunc(pmix_status_t status, char nspace[], void *cbdata);
PMIX_EXPORT int PMIx_Spawn(const pmix_info_t job_info[], size_t ninfo,
PMIX_EXPORT pmix_status_t PMIx_Spawn(const pmix_info_t job_info[], size_t ninfo,
const pmix_app_t apps[], size_t napps,
char nspace[])
{
int rc;
pmix_status_t rc;
pmix_cb_t *cb;
pmix_output_verbose(2, pmix_globals.debug_output,

Просмотреть файл

@ -3,6 +3,7 @@
* Copyright (c) 2014-2016 Intel, Inc. All rights reserved.
* Copyright (c) 2016 Mellanox Technologies, Inc.
* All rights reserved.
* Copyright (c) 2016 IBM Corporation, All rights reserved.
*
* $COPYRIGHT$
*
@ -13,7 +14,7 @@
#include <src/include/pmix_config.h>
#include <src/include/types.h>
#include <src/include/pmix_stdint.h>
#include <pmix/autogen/pmix_stdint.h>
#include <src/include/pmix_socket_errno.h>
#include <pmix.h>
@ -65,6 +66,10 @@ PMIX_EXPORT void PMIx_Deregister_errhandler(int errhandler_ref,
return;
}
if (errhandler_ref < 0) {
return;
}
/* common err handler registration */
if (pmix_globals.server) {
/* PMIX server: store the error handler, process info keys and call

Просмотреть файл

@ -11,6 +11,7 @@
# All rights reserved.
# Copyright (c) 2007 Cisco Systems, Inc. All rights reserved.
# Copyright (c) 2013-2016 Intel, Inc. All rights reserved
# Copyright (c) 2016 IBM Corporation. All rights reserved.
# $COPYRIGHT$
#
# Additional copyrights may follow
@ -18,8 +19,6 @@
# $HEADER$
#
EXTRA_DIST += src/include/private/autogen/README.txt
# This makefile.am does not stand on its own - it is included from
# src/Makefile.am
@ -35,13 +34,7 @@ headers += \
src/include/align.h \
src/include/hash_string.h \
src/include/pmix_socket_errno.h \
src/include/pmix_stdint.h \
src/include/prefetch.h \
src/include/types.h
endif ! PMIX_EMBEDDED_MODE
if WANT_INSTALL_HEADERS
headers += \
src/include/private/autogen/config.h
endif

Просмотреть файл

@ -1,7 +1,7 @@
/*
* Copyright (c) 2016 Mellanox Technologies, Inc.
* All rights reserved.
*
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -12,7 +12,6 @@
#ifndef PMIX_INCLUDE_CONFIG_H
#define PMIX_INCLUDE_CONFIG_H
#include <src/include/private/autogen/config.h>
#include <pmix/autogen/config.h>
#include <pmix/rename.h>

Просмотреть файл

@ -5,6 +5,7 @@
* and Technology (RIST). All rights reserved.
* Copyright (c) 2014-2015 Artem Y. Polyakov <artpol84@gmail.com>.
* All rights reserved.
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -17,7 +18,7 @@
#include <src/include/pmix_config.h>
#include <src/include/types.h>
#include <src/include/pmix_stdint.h>
#include <pmix/autogen/pmix_stdint.h>
#include <src/include/pmix_socket_errno.h>
#include "src/include/pmix_globals.h"

Просмотреть файл

@ -1,3 +0,0 @@
This directory needs to exist in the repo so that the Autotools can
generate a file here. We have a put a token file in this directory so
that git doesn't ignore the empty directory in the repository.

Просмотреть файл

@ -1,6 +1,6 @@
/*
* Copyright (c) 2015 Intel, Inc. All rights reserved.
*
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -28,7 +28,7 @@
static int native_init(void);
static void native_finalize(void);
static char* create_cred(void);
static int validate_cred(pmix_peer_t *peer, char *cred);
static pmix_status_t validate_cred(pmix_peer_t *peer, char *cred);
pmix_sec_base_module_t pmix_native_module = {
"native",
@ -70,7 +70,7 @@ static char* create_cred(void)
return cred;
}
static int validate_cred(pmix_peer_t *peer, char *cred)
static pmix_status_t validate_cred(pmix_peer_t *peer, char *cred)
{
uid_t uid;
gid_t gid;

Просмотреть файл

@ -7,7 +7,7 @@
* All rights reserved.
* Copyright (c) 2016 Mellanox Technologies, Inc.
* All rights reserved.
*
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -18,8 +18,8 @@
#include <src/include/pmix_config.h>
#include <src/include/types.h>
#include <src/include/pmix_stdint.h>
#include <private/pmix_socket_errno.h>
#include <pmix/autogen/pmix_stdint.h>
#include <src/include/pmix_socket_errno.h>
#include "src/include/pmix_globals.h"

Просмотреть файл

@ -3,7 +3,7 @@
* Copyright (c) 2015 Intel, Inc. All rights reserved.
* Copyright (c) 2016 Mellanox Technologies, Inc.
* All rights reserved.
*
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -14,7 +14,7 @@
#include <src/include/pmix_config.h>
#include <src/include/types.h>
#include <src/include/pmix_stdint.h>
#include <pmix/autogen/pmix_stdint.h>
#include <pmix/pmix_common.h>
#include "src/include/pmix_globals.h"

Просмотреть файл

@ -7,6 +7,7 @@
* All rights reserved.
* Copyright (c) 2016 Mellanox Technologies, Inc.
* All rights reserved.
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -17,7 +18,7 @@
#include <src/include/pmix_config.h>
#include <src/include/types.h>
#include <src/include/pmix_stdint.h>
#include <pmix/autogen/pmix_stdint.h>
#include <src/include/pmix_socket_errno.h>
#include <pmix_server.h>
@ -638,7 +639,8 @@ PMIX_EXPORT void PMIx_server_deregister_nspace(const char nspace[])
PMIX_THREADSHIFT(cd, _deregister_nspace);
}
void pmix_server_execute_collective(int sd, short args, void *cbdata) {
void pmix_server_execute_collective(int sd, short args, void *cbdata)
{
pmix_trkr_caddy_t *tcd = (pmix_trkr_caddy_t*)cbdata;
pmix_server_trkr_t *trk = tcd->trk;
char *data = NULL;
@ -1697,7 +1699,7 @@ PMIX_EXPORT pmix_status_t PMIx_generate_ppn(const char *input, char **regexp)
**** IMMEDIATELY. THUS ANYTHING THAT ACCESSES A GLOBAL ENTITY ****
**** MUST BE PUSHED INTO AN EVENT FOR PROTECTION ****/
static void op_cbfunc(int status, void *cbdata)
static void op_cbfunc(pmix_status_t status, void *cbdata)
{
pmix_server_caddy_t *cd = (pmix_server_caddy_t*)cbdata;
pmix_buffer_t *reply;

Просмотреть файл

@ -7,6 +7,7 @@
* All rights reserved.
* Copyright (c) 2016 Mellanox Technologies, Inc.
* All rights reserved.
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -17,7 +18,7 @@
#include <src/include/pmix_config.h>
#include <src/include/types.h>
#include <src/include/pmix_stdint.h>
#include <pmix/autogen/pmix_stdint.h>
#include <src/include/pmix_socket_errno.h>
#include <pmix_server.h>

Просмотреть файл

@ -7,7 +7,7 @@
* All rights reserved.
* Copyright (c) 2016 Mellanox Technologies, Inc.
* All rights reserved.
*
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -18,7 +18,7 @@
#include <src/include/pmix_config.h>
#include <src/include/types.h>
#include <src/include/pmix_stdint.h>
#include <pmix/autogen/pmix_stdint.h>
#include <src/include/pmix_socket_errno.h>
#include <pmix_server.h>
@ -92,7 +92,7 @@ pmix_status_t pmix_start_listening(struct sockaddr_un *address)
}
/* set the mode as required */
if (0 != chmod(address->sun_path, S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH)) {
pmix_output(0, "CANNOT CHMOD %s\n", address->sun_path);
pmix_output(0, "CANNOT CHMOD %s", address->sun_path);
return PMIX_ERROR;
}

Просмотреть файл

@ -7,6 +7,7 @@
* All rights reserved.
* Copyright (c) 2016 Mellanox Technologies, Inc.
* All rights reserved.
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -17,7 +18,7 @@
#include <src/include/pmix_config.h>
#include <src/include/types.h>
#include <src/include/pmix_stdint.h>
#include <pmix/autogen/pmix_stdint.h>
#include <src/include/pmix_socket_errno.h>
#include <pmix_server.h>

Просмотреть файл

@ -5,7 +5,7 @@
* All rights reserved.
* Copyright (c) 2015 Mellanox Technologies, Inc.
* All rights reserved.
*
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*/
@ -147,7 +147,7 @@ typedef struct {
} while (0)
int pmix_start_listening(struct sockaddr_un *address);
pmix_status_t pmix_start_listening(struct sockaddr_un *address);
void pmix_stop_listening(void);
bool pmix_server_trk_update(pmix_server_trkr_t *trk);

Просмотреть файл

@ -7,7 +7,7 @@
* All rights reserved.
* Copyright (c) 2016 Mellanox Technologies, Inc.
* All rights reserved.
*
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -18,7 +18,7 @@
#include <src/include/pmix_config.h>
#include <src/include/types.h>
#include <src/include/pmix_stdint.h>
#include <pmix/autogen/pmix_stdint.h>
#include "src/include/pmix_globals.h"

Просмотреть файл

@ -6,6 +6,7 @@
* and Technology (RIST). All rights reserved.
* Copyright (c) 2016 Mellanox Technologies, Inc.
* All rights reserved.
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -16,7 +17,7 @@
#include <src/include/pmix_config.h>
#include <src/include/types.h>
#include <src/include/pmix_stdint.h>
#include <pmix/autogen/pmix_stdint.h>
#include <src/include/pmix_socket_errno.h>
#include "src/include/pmix_globals.h"
@ -77,7 +78,7 @@ void pmix_usock_finalize(void)
PMIX_LIST_DESTRUCT(&pmix_usock_globals.posted_recvs);
}
int pmix_usock_set_nonblocking(int sd)
pmix_status_t pmix_usock_set_nonblocking(int sd)
{
int flags;
/* setup the socket as non-blocking */
@ -95,7 +96,7 @@ int pmix_usock_set_nonblocking(int sd)
return PMIX_SUCCESS;
}
int pmix_usock_set_blocking(int sd)
pmix_status_t pmix_usock_set_blocking(int sd)
{
int flags;
/* setup the socket as non-blocking */

Просмотреть файл

@ -20,7 +20,7 @@
* and Technology (RIST). All rights reserved.
* Copyright (c) 2016 Mellanox Technologies, Inc.
* All rights reserved.
*
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -185,8 +185,8 @@ extern pmix_usock_globals_t pmix_usock_globals;
/* usock common functions */
void pmix_usock_init(pmix_usock_cbfunc_t cbfunc);
void pmix_usock_finalize(void);
int pmix_usock_set_nonblocking(int sd);
int pmix_usock_set_blocking(int sd);
pmix_status_t pmix_usock_set_nonblocking(int sd);
pmix_status_t pmix_usock_set_blocking(int sd);
pmix_status_t pmix_usock_send_blocking(int sd, char *ptr, size_t size);
pmix_status_t pmix_usock_recv_blocking(int sd, char *data, size_t size);
void pmix_usock_send_recv(int sd, short args, void *cbdata);

Просмотреть файл

@ -6,7 +6,7 @@
* and Technology (RIST). All rights reserved.
* Copyright (c) 2016 Mellanox Technologies, Inc.
* All rights reserved.
*
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -16,7 +16,7 @@
#include <src/include/pmix_config.h>
#include <src/include/types.h>
#include <src/include/pmix_stdint.h>
#include <pmix/autogen/pmix_stdint.h>
#include <src/include/pmix_socket_errno.h>
#ifdef HAVE_STRING_H

Просмотреть файл

@ -11,7 +11,7 @@
* and Technology (RIST). All rights reserved.
* Copyright (c) 2016 Mellanox Technologies, Inc.
* All rights reserved.
*
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -22,7 +22,7 @@
#include <src/include/pmix_config.h>
#include <src/include/pmix_stdint.h>
#include <pmix/autogen/pmix_stdint.h>
#include <src/include/hash_string.h>
#include <string.h>
@ -65,7 +65,7 @@ static pmix_kval_t* lookup_keyval(pmix_list_t *data,
static pmix_proc_data_t* lookup_proc(pmix_hash_table_t *jtable,
uint64_t id, bool create);
int pmix_hash_store(pmix_hash_table_t *table,
pmix_status_t pmix_hash_store(pmix_hash_table_t *table,
int rank, pmix_kval_t *kin)
{
pmix_proc_data_t *proc_data;
@ -229,7 +229,7 @@ pmix_status_t pmix_hash_fetch_by_key(pmix_hash_table_t *table, const char *key,
return PMIX_SUCCESS;
}
int pmix_hash_remove_data(pmix_hash_table_t *table,
pmix_status_t pmix_hash_remove_data(pmix_hash_table_t *table,
int rank, const char *key)
{
pmix_status_t rc = PMIX_SUCCESS;

Просмотреть файл

@ -13,6 +13,7 @@
* Copyright (c) 2007-2013 Los Alamos National Security, LLC. All rights
* reserved.
* Copyright (c) 2014-2015 Intel, Inc. All rights reserved.
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -92,7 +93,7 @@ char **pmix_environ_merge(char **minor, char **major)
* Portable version of setenv(), allowing editing of any environ-like
* array
*/
int pmix_setenv(const char *name, const char *value, bool overwrite,
pmix_status_t pmix_setenv(const char *name, const char *value, bool overwrite,
char ***env)
{
int i;
@ -175,7 +176,7 @@ int pmix_setenv(const char *name, const char *value, bool overwrite,
* Portable version of unsetenv(), allowing editing of any
* environ-like array
*/
int pmix_unsetenv(const char *name, char ***env)
pmix_status_t pmix_unsetenv(const char *name, char ***env)
{
int i;
char *compare;

Просмотреть файл

@ -14,6 +14,7 @@
* Copyright (c) 2015 Intel, Inc. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -112,7 +113,7 @@ PMIX_DECLSPEC char **pmix_environ_merge(char **minor, char **major) __pmix_attri
* pmix_setenv("foo", "bar", true, &my_env);
* \endcode
*/
PMIX_DECLSPEC int pmix_setenv(const char *name, const char *value,
PMIX_DECLSPEC pmix_status_t pmix_setenv(const char *name, const char *value,
bool overwrite, char ***env) __pmix_attribute_nonnull__(1);
/**

Просмотреть файл

@ -271,12 +271,12 @@ static int test_item4(void)
log_info("PMI_Get_clique_size=%d\n", val);
log_assert((0 < val) && (val <= size), "");
ranks = alloca(val);
ranks = alloca(val*sizeof(int));
if (!ranks) {
return PMI_FAIL;
}
memset(ranks, (-1), val);
memset(ranks, (-1), val*sizeof(int));
if (PMI_SUCCESS != (rc = PMI_Get_clique_ranks(ranks, val))) {
log_fatal("PMI_Get_clique_ranks failed: %d\n", rc);
return rc;

Просмотреть файл

@ -4,6 +4,7 @@
* and Technology (RIST). All rights reserved.
* Copyright (c) 2015 Mellanox Technologies, Inc.
* All rights reserved.
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -79,12 +80,12 @@ pmix_list_t *pmix_test_published_list = NULL;
static int finalized_count = 0;
int connected(const pmix_proc_t *proc, void *server_object)
pmix_status_t connected(const pmix_proc_t *proc, void *server_object)
{
return PMIX_SUCCESS;
}
int finalized(const pmix_proc_t *proc, void *server_object,
pmix_status_t finalized(const pmix_proc_t *proc, void *server_object,
pmix_op_cbfunc_t cbfunc, void *cbdata)
{
if( CLI_TERM <= cli_info[proc->rank].state ){
@ -105,7 +106,7 @@ int finalized(const pmix_proc_t *proc, void *server_object,
return PMIX_SUCCESS;
}
int abort_fn(const pmix_proc_t *proc, void *server_object,
pmix_status_t abort_fn(const pmix_proc_t *proc, void *server_object,
int status, const char msg[],
pmix_proc_t procs[], size_t nprocs,
pmix_op_cbfunc_t cbfunc, void *cbdata)
@ -119,7 +120,7 @@ int abort_fn(const pmix_proc_t *proc, void *server_object,
return PMIX_SUCCESS;
}
int fencenb_fn(const pmix_proc_t procs[], size_t nprocs,
pmix_status_t fencenb_fn(const pmix_proc_t procs[], size_t nprocs,
const pmix_info_t info[], size_t ninfo,
char *data, size_t ndata,
pmix_modex_cbfunc_t cbfunc, void *cbdata)
@ -139,7 +140,7 @@ int fencenb_fn(const pmix_proc_t procs[], size_t nprocs,
return PMIX_SUCCESS;
}
int dmodex_fn(const pmix_proc_t *proc,
pmix_status_t dmodex_fn(const pmix_proc_t *proc,
const pmix_info_t info[], size_t ninfo,
pmix_modex_cbfunc_t cbfunc, void *cbdata)
{
@ -156,7 +157,7 @@ int dmodex_fn(const pmix_proc_t *proc,
return PMIX_SUCCESS;
}
int publish_fn(const pmix_proc_t *proc,
pmix_status_t publish_fn(const pmix_proc_t *proc,
const pmix_info_t info[], size_t ninfo,
pmix_op_cbfunc_t cbfunc, void *cbdata)
{
@ -189,7 +190,7 @@ int publish_fn(const pmix_proc_t *proc,
return PMIX_SUCCESS;
}
int lookup_fn(const pmix_proc_t *proc, char **keys,
pmix_status_t lookup_fn(const pmix_proc_t *proc, char **keys,
const pmix_info_t info[], size_t ninfo,
pmix_lookup_cbfunc_t cbfunc, void *cbdata)
{
@ -221,7 +222,7 @@ int lookup_fn(const pmix_proc_t *proc, char **keys,
return PMIX_SUCCESS;
}
int unpublish_fn(const pmix_proc_t *proc, char **keys,
pmix_status_t unpublish_fn(const pmix_proc_t *proc, char **keys,
const pmix_info_t info[], size_t ninfo,
pmix_op_cbfunc_t cbfunc, void *cbdata)
{
@ -268,7 +269,7 @@ static void release_cb(pmix_status_t status, void *cbdata)
free(cb);
}
int spawn_fn(const pmix_proc_t *proc,
pmix_status_t spawn_fn(const pmix_proc_t *proc,
const pmix_info_t job_info[], size_t ninfo,
const pmix_app_t apps[], size_t napps,
pmix_spawn_cbfunc_t cbfunc, void *cbdata)
@ -281,7 +282,7 @@ int spawn_fn(const pmix_proc_t *proc,
return PMIX_SUCCESS;
}
int connect_fn(const pmix_proc_t procs[], size_t nprocs,
pmix_status_t connect_fn(const pmix_proc_t procs[], size_t nprocs,
const pmix_info_t info[], size_t ninfo,
pmix_op_cbfunc_t cbfunc, void *cbdata)
{
@ -292,7 +293,7 @@ int connect_fn(const pmix_proc_t procs[], size_t nprocs,
return PMIX_SUCCESS;
}
int disconnect_fn(const pmix_proc_t procs[], size_t nprocs,
pmix_status_t disconnect_fn(const pmix_proc_t procs[], size_t nprocs,
const pmix_info_t info[], size_t ninfo,
pmix_op_cbfunc_t cbfunc, void *cbdata)
{
@ -302,7 +303,7 @@ int disconnect_fn(const pmix_proc_t procs[], size_t nprocs,
return PMIX_SUCCESS;
}
int regevents_fn (const pmix_info_t info[], size_t ninfo,
pmix_status_t regevents_fn (const pmix_info_t info[], size_t ninfo,
pmix_op_cbfunc_t cbfunc, void *cbdata)
{
TEST_VERBOSE ((" pmix host server regevents_fn called "));
@ -312,7 +313,7 @@ int regevents_fn (const pmix_info_t info[], size_t ninfo,
return PMIX_SUCCESS;
}
int deregevents_fn (const pmix_info_t info[], size_t ninfo,
pmix_status_t deregevents_fn (const pmix_info_t info[], size_t ninfo,
pmix_op_cbfunc_t cbfunc, void *cbdata)
{
TEST_VERBOSE ((" pmix host server deregevents_fn called "));

Просмотреть файл

@ -16,6 +16,7 @@
* Copyright (c) 2013-2015 Intel, Inc. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2016 IBM Corporation. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -377,7 +378,7 @@ static pmix_status_t connected(const pmix_proc_t *proc, void *server_object)
{
return PMIX_SUCCESS;
}
static int finalized(const pmix_proc_t *proc, void *server_object,
static pmix_status_t finalized(const pmix_proc_t *proc, void *server_object,
pmix_op_cbfunc_t cbfunc, void *cbdata)
{
pmix_output(0, "SERVER: FINALIZED %s:%d",
@ -401,9 +402,9 @@ static void abcbfunc(pmix_status_t status, void *cbdata)
PMIX_RELEASE(x);
}
static int abort_fn(const pmix_proc_t *proc,
static pmix_status_t abort_fn(const pmix_proc_t *proc,
void *server_object,
pmix_status_t status, const char msg[],
int status, const char msg[],
pmix_proc_t procs[], size_t nprocs,
pmix_op_cbfunc_t cbfunc, void *cbdata)
{
@ -441,7 +442,7 @@ static int abort_fn(const pmix_proc_t *proc,
}
static int fencenb_fn(const pmix_proc_t procs[], size_t nprocs,
static pmix_status_t fencenb_fn(const pmix_proc_t procs[], size_t nprocs,
const pmix_info_t info[], size_t ninfo,
char *data, size_t ndata,
pmix_modex_cbfunc_t cbfunc, void *cbdata)
@ -455,7 +456,7 @@ static int fencenb_fn(const pmix_proc_t procs[], size_t nprocs,
}
static int dmodex_fn(const pmix_proc_t *proc,
static pmix_status_t dmodex_fn(const pmix_proc_t *proc,
const pmix_info_t info[], size_t ninfo,
pmix_modex_cbfunc_t cbfunc, void *cbdata)
{
@ -470,7 +471,7 @@ static int dmodex_fn(const pmix_proc_t *proc,
}
static int publish_fn(const pmix_proc_t *proc,
static pmix_status_t publish_fn(const pmix_proc_t *proc,
const pmix_info_t info[], size_t ninfo,
pmix_op_cbfunc_t cbfunc, void *cbdata)
{
@ -494,7 +495,7 @@ static int publish_fn(const pmix_proc_t *proc,
}
static int lookup_fn(const pmix_proc_t *proc, char **keys,
static pmix_status_t lookup_fn(const pmix_proc_t *proc, char **keys,
const pmix_info_t info[], size_t ninfo,
pmix_lookup_cbfunc_t cbfunc, void *cbdata)
{
@ -543,7 +544,7 @@ static int lookup_fn(const pmix_proc_t *proc, char **keys,
}
static int unpublish_fn(const pmix_proc_t *proc, char **keys,
static pmix_status_t unpublish_fn(const pmix_proc_t *proc, char **keys,
const pmix_info_t info[], size_t ninfo,
pmix_op_cbfunc_t cbfunc, void *cbdata)
{
@ -576,7 +577,7 @@ static void spcbfunc(pmix_status_t status, void *cbdata)
}
}
static int spawn_fn(const pmix_proc_t *proc,
static pmix_status_t spawn_fn(const pmix_proc_t *proc,
const pmix_info_t job_info[], size_t ninfo,
const pmix_app_t apps[], size_t napps,
pmix_spawn_cbfunc_t cbfunc, void *cbdata)
@ -602,7 +603,7 @@ static int spawn_fn(const pmix_proc_t *proc,
}
static int connect_fn(const pmix_proc_t procs[], size_t nprocs,
static pmix_status_t connect_fn(const pmix_proc_t procs[], size_t nprocs,
const pmix_info_t info[], size_t ninfo,
pmix_op_cbfunc_t cbfunc, void *cbdata)
{
@ -619,7 +620,7 @@ static int connect_fn(const pmix_proc_t procs[], size_t nprocs,
}
static int disconnect_fn(const pmix_proc_t procs[], size_t nprocs,
static pmix_status_t disconnect_fn(const pmix_proc_t procs[], size_t nprocs,
const pmix_info_t info[], size_t ninfo,
pmix_op_cbfunc_t cbfunc, void *cbdata)
{

Просмотреть файл

@ -47,7 +47,7 @@ static void set_namespace(int nprocs, char *ranks, char *name)
{
size_t ninfo;
pmix_info_t *info;
ninfo = 6;
ninfo = 8;
char *regex, *ppn;
PMIX_INFO_CREATE(info, ninfo);
@ -77,6 +77,14 @@ static void set_namespace(int nprocs, char *ranks, char *name)
info[5].value.type = PMIX_STRING;
info[5].value.data.string = ppn;
(void)strncpy(info[6].key, PMIX_JOB_SIZE, PMIX_MAX_KEYLEN);
info[6].value.type = PMIX_UINT32;
info[6].value.data.uint32 = nprocs;
(void)strncpy(info[7].key, PMIX_APPNUM, PMIX_MAX_KEYLEN);
info[7].value.type = PMIX_UINT32;
info[7].value.data.uint32 = getpid ();
int in_progress = 1, rc;
if (PMIX_SUCCESS == (rc = PMIx_server_register_nspace(name, nprocs, info, ninfo, release_cb, &in_progress))) {
PMIX_WAIT_FOR_COMPLETION(in_progress);