From a215a4831dfae9dd0a3fee7b31ee784d4e5394a4 Mon Sep 17 00:00:00 2001 From: Vasily Filipov Date: Mon, 13 Oct 2014 09:47:56 +0300 Subject: [PATCH 1/3] MTL/MXM: disable "bulk_connect" by default. --- ompi/mca/mtl/mxm/mtl_mxm_component.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ompi/mca/mtl/mxm/mtl_mxm_component.c b/ompi/mca/mtl/mxm/mtl_mxm_component.c index 492c5a3523..0d7291ef70 100644 --- a/ompi/mca/mtl/mxm/mtl_mxm_component.c +++ b/ompi/mca/mtl/mxm/mtl_mxm_component.c @@ -129,11 +129,11 @@ static int ompi_mtl_mxm_component_register(void) { unsigned long cur_ver = mxm_get_version(); + ompi_mtl_mxm.bulk_connect = 0; + if (cur_ver < MXM_VERSION(3,2)) { - ompi_mtl_mxm.bulk_connect = 0; ompi_mtl_mxm.bulk_disconnect = 0; } else { - ompi_mtl_mxm.bulk_connect = 1; ompi_mtl_mxm.bulk_disconnect = 1; } From 6372ac926c6a6622222915ac4f9301021f731c35 Mon Sep 17 00:00:00 2001 From: Mike Dubman Date: Mon, 13 Oct 2014 11:33:26 +0300 Subject: [PATCH 2/3] tools: fix cli args parsing No need to "shift" if argument does not expect parameter on the command line. --- contrib/dist/make_dist_tarball | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contrib/dist/make_dist_tarball b/contrib/dist/make_dist_tarball index de09d2696b..783709d4b3 100755 --- a/contrib/dist/make_dist_tarball +++ b/contrib/dist/make_dist_tarball @@ -72,7 +72,7 @@ while test "$1" != ""; do --no-ompi) want_ompi=0 ;; --autogen-args) autogen_args=$2; shift ;; --distdir) distdir=$2; shift ;; - --dirtyok) dirty_ok=1; shift ;; + --dirtyok) dirty_ok=1 ;; --verok) gnu_version_ignore=1;; --no-git-update) git_update=0;; *) From de68d58a9e64eb1d8c5f43a9ec7cd7becad11553 Mon Sep 17 00:00:00 2001 From: Nadezhda Kogteva Date: Mon, 13 Oct 2014 13:12:16 +0300 Subject: [PATCH 3/3] oshmem: refactor of oshmem/mca/sshmem/*.[ch] files to use #if MACRO style --- oshmem/mca/sshmem/base/base.h | 2 +- oshmem/mca/sshmem/verbs/configure.m4 | 19 ++++++++----------- oshmem/mca/sshmem/verbs/sshmem_verbs.h | 4 ++-- .../mca/sshmem/verbs/sshmem_verbs_component.c | 4 ++-- oshmem/mca/sshmem/verbs/sshmem_verbs_module.c | 4 ++-- 5 files changed, 15 insertions(+), 18 deletions(-) diff --git a/oshmem/mca/sshmem/base/base.h b/oshmem/mca/sshmem/base/base.h index 82a3fb02fb..54f6723955 100644 --- a/oshmem/mca/sshmem/base/base.h +++ b/oshmem/mca/sshmem/base/base.h @@ -128,7 +128,7 @@ OSHMEM_DECLSPEC extern mca_base_framework_t oshmem_sshmem_base_framework; #define __SSHMEM_FILE__ __FILE__ #endif -#ifdef OPAL_ENABLE_DEBUG +#if OPAL_ENABLE_DEBUG #define SSHMEM_VERBOSE(level, ...) \ oshmem_output_verbose(level, oshmem_sshmem_base_framework.framework_output, \ "%s:%d - %s()", __SSHMEM_FILE__, __LINE__, __FUNCTION__, __VA_ARGS__) diff --git a/oshmem/mca/sshmem/verbs/configure.m4 b/oshmem/mca/sshmem/verbs/configure.m4 index 7d5bb9e4d8..b3d3d9c4a0 100644 --- a/oshmem/mca/sshmem/verbs/configure.m4 +++ b/oshmem/mca/sshmem/verbs/configure.m4 @@ -35,6 +35,8 @@ AC_DEFUN([MCA_oshmem_sshmem_verbs_CONFIG],[ AC_SUBST([oshmem_verbs_LDFLAGS]) AC_SUBST([oshmem_verbs_LIBS]) + # ibv_reg_shared_mr was added in MOFED 1.8 + oshmem_have_mpage=0 # If we have the oshmem_verbs stuff available, find out what we've got AS_IF( [test "$oshmem_verbs_sm_build_verbs" = "1"], @@ -42,9 +44,6 @@ AC_DEFUN([MCA_oshmem_sshmem_verbs_CONFIG],[ OSHMEM_LIBSHMEM_EXTRA_LDFLAGS="$OSHMEM_LIBSHMEM_EXTRA_LDFLAGS $oshmem_verbs_LDFLAGS" OSHMEM_LIBSHMEM_EXTRA_LIBS="$OSHMEM_LIBSHMEM_EXTRA_LIBS $oshmem_verbs_LIBS" - # ibv_reg_shared_mr was added in MOFED 1.8 - oshmem_have_mpage=0 - oshmem_verbs_save_CPPFLAGS="$CPPFLAGS" oshmem_verbs_save_LDFLAGS="$LDFLAGS" oshmem_verbs_save_LIBS="$LIBS" @@ -64,22 +63,19 @@ AC_DEFUN([MCA_oshmem_sshmem_verbs_CONFIG],[ CPPFLAGS="$oshmem_verbs_save_CPPFLAGS" LDFLAGS="$oshmem_verbs_save_LDFLAGS" LIBS="$oshmem_verbs_save_LIBS" - - AC_DEFINE_UNQUOTED(MPAGE_ENABLE, $oshmem_have_mpage, - [Whether we can use M-PAGE supported since MOFED 1.8]) if test "x$oshmem_have_mpage" = "x0"; then oshmem_verbs_sm_build_verbs=0 fi ]) - + AC_DEFINE_UNQUOTED(MPAGE_ENABLE, $oshmem_have_mpage, [Whether we can use M-PAGE supported since MOFED 1.8]) + + exp_access_happy=0 exp_reg_mr_happy=0 AS_IF([test "$oshmem_have_mpage" = "3"], [ AC_CHECK_MEMBER([struct ibv_exp_reg_shared_mr_in.exp_access], - [AC_DEFINE_UNQUOTED(MPAGE_HAVE_SMR_EXP_ACCESS, 1, - [exp_access field is part of ibv_exp_reg_shared_mr_in] - )], + [exp_access_happy=1], [], [#include ]) @@ -88,7 +84,8 @@ AC_DEFUN([MCA_oshmem_sshmem_verbs_CONFIG],[ [], [#include ]) ]) - AC_DEFINE_UNQUOTED(MPAGE_HAVE_IBV_EXP_REG_MR_CREATE_FLAGS, $exp_reg_mr_happy, [create_flags field is part of ibv_exp_reg_mr_in]), + AC_DEFINE_UNQUOTED(MPAGE_HAVE_SMR_EXP_ACCESS, $exp_access_happy, [exp_access field is part of ibv_exp_reg_shared_mr_in]) + AC_DEFINE_UNQUOTED(MPAGE_HAVE_IBV_EXP_REG_MR_CREATE_FLAGS, $exp_reg_mr_happy, [create_flags field is part of ibv_exp_reg_mr_in]) AS_IF([test "$enable_verbs_sshmem" = "yes" -a "$oshmem_verbs_sm_build_verbs" = "0"], [AC_MSG_WARN([VERBS shared memory support requested but not found]) diff --git a/oshmem/mca/sshmem/verbs/sshmem_verbs.h b/oshmem/mca/sshmem/verbs/sshmem_verbs.h index 4f6c98f328..3b4e1694d2 100644 --- a/oshmem/mca/sshmem/verbs/sshmem_verbs.h +++ b/oshmem/mca/sshmem/verbs/sshmem_verbs.h @@ -31,7 +31,7 @@ typedef struct openib_device_t { struct ibv_mr *ib_mr_shared; } openib_device_t; -#if defined(MPAGE_ENABLE) && (MPAGE_ENABLE > 0) +#if (MPAGE_ENABLE > 0) # if MPAGE_ENABLE < 3 # define IBV_EXP_ACCESS_ALLOCATE_MR IBV_ACCESS_ALLOCATE_MR @@ -60,7 +60,7 @@ static inline void mca_sshmem_verbs_fill_shared_mr(struct ibv_exp_reg_shared_mr_ mr->pd = pd; mr->addr = addr; mr->mr_handle = handle; -#if defined(MPAGE_HAVE_SMR_EXP_ACCESS) +#if (MPAGE_HAVE_SMR_EXP_ACCESS) mr->exp_access = access; #else mr->access = access; diff --git a/oshmem/mca/sshmem/verbs/sshmem_verbs_component.c b/oshmem/mca/sshmem/verbs/sshmem_verbs_component.c index b961b4c11e..9b0347cf91 100644 --- a/oshmem/mca/sshmem/verbs/sshmem_verbs_component.c +++ b/oshmem/mca/sshmem/verbs/sshmem_verbs_component.c @@ -160,7 +160,7 @@ verbs_runtime_query(mca_base_module_t **module, OBJ_CONSTRUCT(&device->ib_mr_array, opal_value_array_t); opal_value_array_init(&device->ib_mr_array, sizeof(struct ibv_mr *)); -#if defined(MPAGE_ENABLE) && (MPAGE_ENABLE > 0) +#if (MPAGE_ENABLE > 0) exp_access_flag = IBV_EXP_ACCESS_ALLOCATE_MR | IBV_EXP_ACCESS_SHARED_MR_USER_READ | IBV_EXP_ACCESS_SHARED_MR_USER_WRITE; @@ -175,7 +175,7 @@ verbs_runtime_query(mca_base_module_t **module, opal_value_array_append_item(&device->ib_mr_array, &ib_mr); } -#if defined(MPAGE_ENABLE) && (MPAGE_ENABLE > 0) +#if (MPAGE_ENABLE > 0) if (!rc && mca_sshmem_verbs_component.has_shared_mr > 0) { struct ibv_exp_reg_shared_mr_in in_smr; diff --git a/oshmem/mca/sshmem/verbs/sshmem_verbs_module.c b/oshmem/mca/sshmem/verbs/sshmem_verbs_module.c index 4b699da943..2711283bfe 100644 --- a/oshmem/mca/sshmem/verbs/sshmem_verbs_module.c +++ b/oshmem/mca/sshmem/verbs/sshmem_verbs_module.c @@ -253,7 +253,7 @@ segment_create(map_segment_t *ds_buf, OBJ_CONSTRUCT(&device->ib_mr_array, opal_value_array_t); opal_value_array_init(&device->ib_mr_array, sizeof(struct ibv_mr *)); -#if defined(MPAGE_ENABLE) && (MPAGE_ENABLE > 0) +#if (MPAGE_ENABLE > 0) exp_access_flag = IBV_EXP_ACCESS_ALLOCATE_MR | IBV_EXP_ACCESS_SHARED_MR_USER_READ | IBV_EXP_ACCESS_SHARED_MR_USER_WRITE; @@ -282,7 +282,7 @@ segment_create(map_segment_t *ds_buf, opal_value_array_append_item(&device->ib_mr_array, &ib_mr); } -#if defined(MPAGE_ENABLE) && (MPAGE_ENABLE > 0) +#if (MPAGE_ENABLE > 0) if (!rc && mca_sshmem_verbs_component.has_shared_mr) { access_flag = IBV_ACCESS_LOCAL_WRITE | IBV_ACCESS_REMOTE_WRITE |