Hello community, here is the log from the commit of package openmpi checked in at Fri Nov 7 15:31:30 CET 2008. -------- --- openmpi/openmpi.changes 2008-10-27 21:51:49.000000000 +0100 +++ /mounts/work_src_done/STABLE/openmpi/openmpi.changes 2008-11-07 14:49:14.455305000 +0100 @@ -1,0 +2,16 @@ +Tue Oct 28 06:57:11 CET 2008 - jjolly@suse.de + +- Updated to version 1.2.8 from OFED 1.4 rc3 + - Tweaked one memory barrier in the openib component to be more conservative. + May fix a problem observed on PPC machines. See ticket #1532. + - Fix OpenFabrics IB partition support. See ticket #1557. + - Restore v1.1 feature that sourced .profile on remote nodes if the default + shell will not do so (e.g. /bin/sh and /bin/ksh). See ticket #1560. + - Fix segfault in MPI_Init_thread() if ompi_mpi_init() fails. See ticket #1562. + - Adjust SLURM support to first look for $SLURM_JOB_CPUS_PER_NODE instead of + the deprecated $SLURM_TASKS_PER_NODE environment variable. This change + may be *required* when using SLURM v1.2 and above. See ticket #1536. + - Fix the MPIR_Proctable to be in process rank order. See ticket #1529. + - Fix a regession introduced in 1.2.6 for the IBM eHCA. See ticket #1526. + +------------------------------------------------------------------- calling whatdependson for head-i586 Old: ---- openmpi-1.2.7.tar.bz2 New: ---- openmpi-1.2.8.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ openmpi.spec ++++++ --- /var/tmp/diff_new_pack.IL9942/_old 2008-11-07 15:30:58.000000000 +0100 +++ /var/tmp/diff_new_pack.IL9942/_new 2008-11-07 15:30:58.000000000 +0100 @@ -1,5 +1,5 @@ # -# spec file for package openmpi (Version 1.2.7) +# spec file for package openmpi (Version 1.2.8) # # Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany. # @@ -20,8 +20,8 @@ Name: openmpi Summary: A powerful implementaion of MPI -Version: 1.2.7 -Release: 3 +Version: 1.2.8 +Release: 1 License: BSD 3-Clause Group: Development/Libraries/Parallel Source0: %{name}-%{version}.tar.bz2 @@ -175,6 +175,19 @@ %_includedir/* %changelog +* Tue Oct 28 2008 jjolly@suse.de +- Updated to version 1.2.8 from OFED 1.4 rc3 + - Tweaked one memory barrier in the openib component to be more conservative. + May fix a problem observed on PPC machines. See ticket #1532. + - Fix OpenFabrics IB partition support. See ticket #1557. + - Restore v1.1 feature that sourced .profile on remote nodes if the default + shell will not do so (e.g. /bin/sh and /bin/ksh). See ticket #1560. + - Fix segfault in MPI_Init_thread() if ompi_mpi_init() fails. See ticket #1562. + - Adjust SLURM support to first look for $SLURM_JOB_CPUS_PER_NODE instead of + the deprecated $SLURM_TASKS_PER_NODE environment variable. This change + may be *required* when using SLURM v1.2 and above. See ticket #1536. + - Fix the MPIR_Proctable to be in process rank order. See ticket #1529. + - Fix a regession introduced in 1.2.6 for the IBM eHCA. See ticket #1526. * Mon Oct 27 2008 ro@suse.de - buildreq compat-dapl-devel only on non-s390* * Thu Sep 18 2008 jjolly@suse.de ++++++ openmpi-1.2.7.tar.bz2 -> openmpi-1.2.8.tar.bz2 ++++++ diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/openmpi-1.2.7/config/config.guess new/openmpi-1.2.8/config/config.guess --- old/openmpi-1.2.7/config/config.guess 2008-08-25 21:48:32.000000000 +0200 +++ new/openmpi-1.2.8/config/config.guess 2008-10-09 00:48:34.000000000 +0200 @@ -4,7 +4,7 @@ # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 # Free Software Foundation, Inc. -timestamp='2008-04-14' +timestamp='2008-09-28' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -796,7 +796,7 @@ x86) echo i586-pc-interix${UNAME_RELEASE} exit ;; - EM64T | authenticamd) + EM64T | authenticamd | genuineintel) echo x86_64-unknown-interix${UNAME_RELEASE} exit ;; IA64) @@ -935,6 +935,9 @@ if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} exit ;; + padre:Linux:*:*) + echo sparc-unknown-linux-gnu + exit ;; parisc:Linux:*:* | hppa:Linux:*:*) # Look for CPU level case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/openmpi-1.2.7/config/config.sub new/openmpi-1.2.8/config/config.sub --- old/openmpi-1.2.7/config/config.sub 2008-08-25 21:48:32.000000000 +0200 +++ new/openmpi-1.2.8/config/config.sub 2008-10-09 00:48:34.000000000 +0200 @@ -4,7 +4,7 @@ # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 # Free Software Foundation, Inc. -timestamp='2008-06-16' +timestamp='2008-09-08' # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software @@ -288,7 +288,7 @@ | v850 | v850e \ | we32k \ | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ - | z8k) + | z8k | z80) basic_machine=$basic_machine-unknown ;; m6811 | m68hc11 | m6812 | m68hc12) @@ -375,7 +375,7 @@ | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ | xstormy16-* | xtensa*-* \ | ymp-* \ - | z8k-*) + | z8k-* | z80-*) ;; # Recognize the basic CPU types without company name, with glob match. xtensa*) @@ -1140,6 +1140,10 @@ basic_machine=z8k-unknown os=-sim ;; + z80-*-coff) + basic_machine=z80-unknown + os=-sim + ;; none) basic_machine=none-none os=-none diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/openmpi-1.2.7/configure new/openmpi-1.2.8/configure --- old/openmpi-1.2.7/configure 2008-08-25 21:44:05.000000000 +0200 +++ new/openmpi-1.2.8/configure 2008-10-09 00:44:25.000000000 +0200 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.61 for Open MPI 1.2.7. +# Generated by GNU Autoconf 2.61 for Open MPI 1.2.8. # # Report bugs to http://www.open-mpi.org/community/help/. # @@ -725,8 +725,8 @@ # Identity of this package. PACKAGE_NAME='Open MPI' PACKAGE_TARNAME='openmpi' -PACKAGE_VERSION='1.2.7' -PACKAGE_STRING='Open MPI 1.2.7' +PACKAGE_VERSION='1.2.8' +PACKAGE_STRING='Open MPI 1.2.8' PACKAGE_BUGREPORT='http://www.open-mpi.org/community/help/' # Factoring default headers for most tests. @@ -2143,7 +2143,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures Open MPI 1.2.7 to adapt to many kinds of systems. +\`configure' configures Open MPI 1.2.8 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -2213,7 +2213,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of Open MPI 1.2.7:";; + short | recursive ) echo "Configuration of Open MPI 1.2.8:";; esac cat <<\_ACEOF @@ -2496,7 +2496,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -Open MPI configure 1.2.7 +Open MPI configure 1.2.8 generated by GNU Autoconf 2.61 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, @@ -2510,7 +2510,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by Open MPI $as_me 1.2.7, which was +It was created by Open MPI $as_me 1.2.8, which was generated by GNU Autoconf 2.61. Invocation command line was $ $0 $@ @@ -3274,7 +3274,7 @@ # Define the identity of the package. PACKAGE='openmpi' - VERSION='1.2.7' + VERSION='1.2.8' # Some tools Automake needs. @@ -150655,7 +150655,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by Open MPI $as_me 1.2.7, which was +This file was extended by Open MPI $as_me 1.2.8, which was generated by GNU Autoconf 2.61. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -150708,7 +150708,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF ac_cs_version="\\ -Open MPI config.status 1.2.7 +Open MPI config.status 1.2.8 configured by $0, generated by GNU Autoconf 2.61, with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/openmpi-1.2.7/NEWS new/openmpi-1.2.8/NEWS --- old/openmpi-1.2.7/NEWS 2008-08-25 21:17:25.000000000 +0200 +++ new/openmpi-1.2.8/NEWS 2008-10-09 00:20:09.000000000 +0200 @@ -26,6 +26,22 @@ bug fixes (and other actions) for each version of Open MPI since version 1.0. +1.2.8 +----- + +- Tweaked one memory barrier in the openib component to be more conservative. + May fix a problem observed on PPC machines. See ticket #1532. +- Fix OpenFabrics IB partition support. See ticket #1557. +- Restore v1.1 feature that sourced .profile on remote nodes if the default + shell will not do so (e.g. /bin/sh and /bin/ksh). See ticket #1560. +- Fix segfault in MPI_Init_thread() if ompi_mpi_init() fails. See ticket #1562. +- Adjust SLURM support to first look for $SLURM_JOB_CPUS_PER_NODE instead of + the deprecated $SLURM_TASKS_PER_NODE environment variable. This change + may be *required* when using SLURM v1.2 and above. See ticket #1536. +- Fix the MPIR_Proctable to be in process rank order. See ticket #1529. +- Fix a regession introduced in 1.2.6 for the IBM eHCA. See ticket #1526. + + 1.2.7 ----- diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/openmpi-1.2.7/ompi/mca/btl/openib/btl_openib.c new/openmpi-1.2.8/ompi/mca/btl/openib/btl_openib.c --- old/openmpi-1.2.7/ompi/mca/btl/openib/btl_openib.c 2008-08-25 21:17:02.000000000 +0200 +++ new/openmpi-1.2.8/ompi/mca/btl/openib/btl_openib.c 2008-10-09 00:20:09.000000000 +0200 @@ -257,8 +257,8 @@ if(min_cq_size > (int32_t) mca_btl_openib_component.ib_cq_size) { - mca_btl_openib_component.ib_cq_size = min_cq_size > openib_btl->hca->ib_dev_attr.max_cqe ? - openib_btl->hca->ib_dev_attr.max_cqe : min_cq_size; + mca_btl_openib_component.ib_cq_size = min_cq_size > (uint32_t)openib_btl->hca->ib_dev_attr.max_cqe ? + (uint32_t)openib_btl->hca->ib_dev_attr.max_cqe : min_cq_size; #if OMPI_MCA_BTL_OPENIB_HAVE_RESIZE_CQ if(!first_time) { rc = ibv_resize_cq(openib_btl->ib_cq[BTL_OPENIB_LP_QP], mca_btl_openib_component.ib_cq_size); @@ -280,8 +280,8 @@ if(first_time) { /* never been here before, setup cq and srq */ mca_btl_openib_component.ib_cq_size = (int) mca_btl_openib_component.ib_cq_size > - openib_btl->hca->ib_dev_attr.max_cqe ? - openib_btl->hca->ib_dev_attr.max_cqe : + (uint32_t)openib_btl->hca->ib_dev_attr.max_cqe ? + (uint32_t)openib_btl->hca->ib_dev_attr.max_cqe : (int) mca_btl_openib_component.ib_cq_size; return mca_btl_openib_create_cq_srq(openib_btl); } diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/openmpi-1.2.7/ompi/mca/btl/openib/btl_openib_component.c new/openmpi-1.2.8/ompi/mca/btl/openib/btl_openib_component.c --- old/openmpi-1.2.7/ompi/mca/btl/openib/btl_openib_component.c 2008-08-25 21:17:02.000000000 +0200 +++ new/openmpi-1.2.8/ompi/mca/btl/openib/btl_openib_component.c 2008-10-09 00:20:09.000000000 +0200 @@ -578,9 +578,13 @@ } else { uint16_t pkey,j; - for (j=0; j < hca->ib_dev_attr.max_pkeys; j++) { - ibv_query_pkey(hca->ib_dev_context, i, j, &pkey); - pkey=ntohs(pkey); + for (j = 0; j < hca->ib_dev_attr.max_pkeys; j++) { + if(ibv_query_pkey(hca->ib_dev_context, i, j, &pkey)){ + BTL_ERROR(("error getting pkey for index %d, device %s " + "port number %d errno says %s", + j, ibv_get_device_name(ib_dev), i, strerror(errno))); + } + pkey = ntohs(pkey) & MCA_BTL_IB_PKEY_MASK; if(pkey == mca_btl_openib_component.ib_pkey_val){ ret = init_one_port(btl_list, hca, i, j, &ib_port_attr); break; @@ -1224,7 +1228,7 @@ if(MCA_BTL_OPENIB_RDMA_FRAG_LOCAL(frag)) { uint32_t size; - opal_atomic_rmb(); + opal_atomic_mb(); if(endpoint->nbo) { BTL_OPENIB_FOOTER_NTOH((*frag->ftr)); } diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/openmpi-1.2.7/ompi/mca/btl/openib/btl_openib.h new/openmpi-1.2.8/ompi/mca/btl/openib/btl_openib.h --- old/openmpi-1.2.7/ompi/mca/btl/openib/btl_openib.h 2008-08-25 21:17:02.000000000 +0200 +++ new/openmpi-1.2.8/ompi/mca/btl/openib/btl_openib.h 2008-10-09 00:20:09.000000000 +0200 @@ -51,6 +51,7 @@ #define MCA_BTL_IB_LEAVE_PINNED 1 #define IB_DEFAULT_GID_PREFIX 0xfe80000000000000ll +#define MCA_BTL_IB_PKEY_MASK 0x7fff /** * Infiniband (IB) BTL component. diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/openmpi-1.2.7/ompi/mca/btl/openib/btl_openib_ini.c new/openmpi-1.2.8/ompi/mca/btl/openib/btl_openib_ini.c --- old/openmpi-1.2.7/ompi/mca/btl/openib/btl_openib_ini.c 2008-08-25 21:17:02.000000000 +0200 +++ new/openmpi-1.2.8/ompi/mca/btl/openib/btl_openib_ini.c 2008-10-09 00:20:09.000000000 +0200 @@ -90,8 +90,6 @@ static void reset_section(bool had_previous_value, parsed_section_values_t *s); static void reset_values(ompi_btl_openib_ini_values_t *v); static int save_section(parsed_section_values_t *s); -static int intify(char *string); -static int intify_list(char *str, uint32_t **values, int *len); static inline void show_help(const char *topic); @@ -364,14 +362,14 @@ all whitespace at the beginning and ending of the value. */ if (0 == strcasecmp(key_buffer, "vendor_id")) { - if (OMPI_SUCCESS != (ret = intify_list(value, &sv->vendor_ids, + if (OMPI_SUCCESS != (ret = ompi_btl_openib_ini_intify_list(value, &sv->vendor_ids, &sv->vendor_ids_len))) { return ret; } } else if (0 == strcasecmp(key_buffer, "vendor_part_id")) { - if (OMPI_SUCCESS != (ret = intify_list(value, &sv->vendor_part_ids, + if (OMPI_SUCCESS != (ret = ompi_btl_openib_ini_intify_list(value, &sv->vendor_part_ids, &sv->vendor_part_ids_len))) { return ret; } @@ -379,13 +377,13 @@ else if (0 == strcasecmp(key_buffer, "mtu")) { /* Single value */ - sv->values.mtu = (uint32_t) intify(value); + sv->values.mtu = (uint32_t) ompi_btl_openib_ini_intify(value); sv->values.mtu_set = true; } else if (0 == strcasecmp(key_buffer, "use_eager_rdma")) { /* Single value */ - sv->values.use_eager_rdma = (uint32_t) intify(value); + sv->values.use_eager_rdma = (uint32_t) ompi_btl_openib_ini_intify(value); sv->values.use_eager_rdma_set = true; } @@ -547,7 +545,7 @@ /* * Do string-to-integer conversion, for both hex and decimal numbers */ -static int intify(char *str) +int ompi_btl_openib_ini_intify(char *str) { while (isspace(*str)) { ++str; @@ -568,7 +566,7 @@ /* * Take a comma-delimited list and infity them all */ -static int intify_list(char *value, uint32_t **values, int *len) +int ompi_btl_openib_ini_intify_list(char *value, uint32_t **values, int *len) { char *comma; char *str = value; @@ -584,7 +582,7 @@ if (NULL == *values) { return OMPI_ERR_OUT_OF_RESOURCE; } - *values[0] = (uint32_t) intify(str); + *values[0] = (uint32_t) ompi_btl_openib_ini_intify(str); *len = 1; } else { /* If we found a comma, loop over all the values. Be a @@ -594,7 +592,7 @@ do { *comma = '\0'; *values = realloc(*values, sizeof(uint32_t) * (*len + 2)); - (*values)[*len] = (int32_t) intify(str); + (*values)[*len] = (int32_t) ompi_btl_openib_ini_intify(str); ++(*len); str = comma + 1; comma = strchr(str, ','); @@ -602,7 +600,7 @@ /* Get the last value (i.e., the value after the last comma, because it won't have been snarfed in the loop) */ - (*values)[*len] = (uint32_t) intify(str); + (*values)[*len] = (uint32_t) ompi_btl_openib_ini_intify(str); ++(*len); } diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/openmpi-1.2.7/ompi/mca/btl/openib/btl_openib_ini.h new/openmpi-1.2.8/ompi/mca/btl/openib/btl_openib_ini.h --- old/openmpi-1.2.7/ompi/mca/btl/openib/btl_openib_ini.h 2008-08-25 21:17:02.000000000 +0200 +++ new/openmpi-1.2.8/ompi/mca/btl/openib/btl_openib_ini.h 2008-10-09 00:20:09.000000000 +0200 @@ -49,6 +49,9 @@ */ int ompi_btl_openib_ini_finalize(void); + int ompi_btl_openib_ini_intify(char *string); + int ompi_btl_openib_ini_intify_list(char *str, uint32_t **values, int *len); + #if defined(c_plusplus) || defined(__cplusplus) } #endif diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/openmpi-1.2.7/ompi/mca/btl/openib/btl_openib_mca.c new/openmpi-1.2.8/ompi/mca/btl/openib/btl_openib_mca.c --- old/openmpi-1.2.7/ompi/mca/btl/openib/btl_openib_mca.c 2008-08-25 21:17:02.000000000 +0200 +++ new/openmpi-1.2.8/ompi/mca/btl/openib/btl_openib_mca.c 2008-10-09 00:20:09.000000000 +0200 @@ -27,6 +27,7 @@ #include "opal/mca/base/mca_base_param.h" #include "btl_openib.h" #include "btl_openib_mca.h" +#include "btl_openib_ini.h" /* * Local flags @@ -97,7 +98,7 @@ */ int btl_openib_register_mca_params(void) { - char *msg, *str; + char *msg, *str, *pkey; int ival, ival2, ret, tmp; ret = OMPI_SUCCESS; @@ -192,13 +193,15 @@ 0, &ival, REGINT_GE_ZERO)); mca_btl_openib_component.ib_pkey_ix = (uint32_t) ival; - CHECK(reg_int("ib_pkey_val", "InfiniBand pkey value" - "(must be > 0 and < 0xffff)", - 0, &ival, REGINT_GE_ZERO)); - if (ival > 0xffff) { + CHECK(reg_string("ib_pkey_val", "OpenFabrics partition key (pkey) value. " + "Unsigned integer decimal or hex values are allowed (e.g., \"3\" or \"0x3f\") and will be masked against the maximum allowable IB paritition key value (0x7fff)", + "0", &pkey, 0)); + mca_btl_openib_component.ib_pkey_val = ompi_btl_openib_ini_intify(pkey) & MCA_BTL_IB_PKEY_MASK; + if (mca_btl_openib_component.ib_pkey_val > MCA_BTL_IB_PKEY_MASK || + mca_btl_openib_component.ib_pkey_val < 0) { ret = OMPI_ERR_BAD_PARAM; } - mca_btl_openib_component.ib_pkey_val = (uint32_t) ival; + free(pkey); CHECK(reg_int("ib_psn", "InfiniBand packet sequence starting number " "(must be >= 0)", diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/openmpi-1.2.7/ompi/mca/io/romio/romio/confdb/config.guess new/openmpi-1.2.8/ompi/mca/io/romio/romio/confdb/config.guess --- old/openmpi-1.2.7/ompi/mca/io/romio/romio/confdb/config.guess 2008-08-25 21:48:32.000000000 +0200 +++ new/openmpi-1.2.8/ompi/mca/io/romio/romio/confdb/config.guess 2008-10-09 00:48:34.000000000 +0200 @@ -4,7 +4,7 @@ # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 # Free Software Foundation, Inc. -timestamp='2008-04-14' +timestamp='2008-09-28' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -796,7 +796,7 @@ x86) echo i586-pc-interix${UNAME_RELEASE} exit ;; - EM64T | authenticamd) + EM64T | authenticamd | genuineintel) echo x86_64-unknown-interix${UNAME_RELEASE} exit ;; IA64) @@ -935,6 +935,9 @@ if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} exit ;; + padre:Linux:*:*) + echo sparc-unknown-linux-gnu + exit ;; parisc:Linux:*:* | hppa:Linux:*:*) # Look for CPU level case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/openmpi-1.2.7/ompi/mca/io/romio/romio/confdb/config.sub new/openmpi-1.2.8/ompi/mca/io/romio/romio/confdb/config.sub --- old/openmpi-1.2.7/ompi/mca/io/romio/romio/confdb/config.sub 2008-08-25 21:48:32.000000000 +0200 +++ new/openmpi-1.2.8/ompi/mca/io/romio/romio/confdb/config.sub 2008-10-09 00:48:34.000000000 +0200 @@ -4,7 +4,7 @@ # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 # Free Software Foundation, Inc. -timestamp='2008-06-16' +timestamp='2008-09-08' # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software @@ -288,7 +288,7 @@ | v850 | v850e \ | we32k \ | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ - | z8k) + | z8k | z80) basic_machine=$basic_machine-unknown ;; m6811 | m68hc11 | m6812 | m68hc12) @@ -375,7 +375,7 @@ | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ | xstormy16-* | xtensa*-* \ | ymp-* \ - | z8k-*) + | z8k-* | z80-*) ;; # Recognize the basic CPU types without company name, with glob match. xtensa*) @@ -1140,6 +1140,10 @@ basic_machine=z8k-unknown os=-sim ;; + z80-*-coff) + basic_machine=z80-unknown + os=-sim + ;; none) basic_machine=none-none os=-none diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/openmpi-1.2.7/ompi/mpi/c/init_thread.c new/openmpi-1.2.8/ompi/mpi/c/init_thread.c --- old/openmpi-1.2.7/ompi/mpi/c/init_thread.c 2008-08-25 21:16:53.000000000 +0200 +++ new/openmpi-1.2.8/ompi/mpi/c/init_thread.c 2008-10-09 00:20:09.000000000 +0200 @@ -36,7 +36,6 @@ int *provided) { int err; - MPI_Comm null = NULL; /* * A thread compliant MPI implementation will be able to return provided @@ -69,6 +68,16 @@ } else { err = ompi_mpi_init(0, NULL, required, provided); } - - OMPI_ERRHANDLER_RETURN(err, null, err, FUNC_NAME); + + /* Since we don't have a communicator to invoke an errorhandler on + here, don't use the fancy-schmancy ERRHANDLER macros; they're + really designed for real communicator objects. Just use the + back-end function directly. */ + + if (MPI_SUCCESS != err) { + return ompi_errhandler_invoke(NULL, NULL, OMPI_ERRHANDLER_TYPE_COMM, + err < 0 ? ompi_errcode_get_mpi_code(err) : + err, FUNC_NAME); + } + return MPI_SUCCESS; } diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/openmpi-1.2.7/ompi/tools/wrappers/mpicc-wrapper-data.txt new/openmpi-1.2.8/ompi/tools/wrappers/mpicc-wrapper-data.txt --- old/openmpi-1.2.7/ompi/tools/wrappers/mpicc-wrapper-data.txt 2008-08-25 21:47:44.000000000 +0200 +++ new/openmpi-1.2.8/ompi/tools/wrappers/mpicc-wrapper-data.txt 2008-10-09 00:47:57.000000000 +0200 @@ -7,7 +7,7 @@ project=Open MPI project_short=OMPI -version=1.2.7 +version=1.2.8 language=C compiler_env=CC compiler_flags_env=CFLAGS diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/openmpi-1.2.7/ompi/tools/wrappers/mpic++-wrapper-data.txt new/openmpi-1.2.8/ompi/tools/wrappers/mpic++-wrapper-data.txt --- old/openmpi-1.2.7/ompi/tools/wrappers/mpic++-wrapper-data.txt 2008-08-25 21:47:44.000000000 +0200 +++ new/openmpi-1.2.8/ompi/tools/wrappers/mpic++-wrapper-data.txt 2008-10-09 00:47:57.000000000 +0200 @@ -7,7 +7,7 @@ project=Open MPI project_short=OMPI -version=1.2.7 +version=1.2.8 language=C++ compiler_env=CXX compiler_flags_env=CXXFLAGS diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/openmpi-1.2.7/ompi/tools/wrappers/mpif77-wrapper-data.txt new/openmpi-1.2.8/ompi/tools/wrappers/mpif77-wrapper-data.txt --- old/openmpi-1.2.7/ompi/tools/wrappers/mpif77-wrapper-data.txt 2008-08-25 21:47:44.000000000 +0200 +++ new/openmpi-1.2.8/ompi/tools/wrappers/mpif77-wrapper-data.txt 2008-10-09 00:47:57.000000000 +0200 @@ -7,7 +7,7 @@ project=Open MPI project_short=OMPI -version=1.2.7 +version=1.2.8 language=Fortran 77 compiler_env=F77 compiler_flags_env=FFLAGS diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/openmpi-1.2.7/ompi/tools/wrappers/mpif90-wrapper-data.txt new/openmpi-1.2.8/ompi/tools/wrappers/mpif90-wrapper-data.txt --- old/openmpi-1.2.7/ompi/tools/wrappers/mpif90-wrapper-data.txt 2008-08-25 21:47:45.000000000 +0200 +++ new/openmpi-1.2.8/ompi/tools/wrappers/mpif90-wrapper-data.txt 2008-10-09 00:47:57.000000000 +0200 @@ -7,7 +7,7 @@ project=Open MPI project_short=OMPI -version=1.2.7 +version=1.2.8 language=Fortran 90 compiler_env=FC compiler_flags_env=FCFLAGS diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/openmpi-1.2.7/opal/libltdl/config/config.guess new/openmpi-1.2.8/opal/libltdl/config/config.guess --- old/openmpi-1.2.7/opal/libltdl/config/config.guess 2008-08-25 21:48:32.000000000 +0200 +++ new/openmpi-1.2.8/opal/libltdl/config/config.guess 2008-10-09 00:48:34.000000000 +0200 @@ -4,7 +4,7 @@ # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 # Free Software Foundation, Inc. -timestamp='2008-04-14' +timestamp='2008-09-28' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -796,7 +796,7 @@ x86) echo i586-pc-interix${UNAME_RELEASE} exit ;; - EM64T | authenticamd) + EM64T | authenticamd | genuineintel) echo x86_64-unknown-interix${UNAME_RELEASE} exit ;; IA64) @@ -935,6 +935,9 @@ if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} exit ;; + padre:Linux:*:*) + echo sparc-unknown-linux-gnu + exit ;; parisc:Linux:*:* | hppa:Linux:*:*) # Look for CPU level case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/openmpi-1.2.7/opal/libltdl/config/config.sub new/openmpi-1.2.8/opal/libltdl/config/config.sub --- old/openmpi-1.2.7/opal/libltdl/config/config.sub 2008-08-25 21:48:32.000000000 +0200 +++ new/openmpi-1.2.8/opal/libltdl/config/config.sub 2008-10-09 00:48:34.000000000 +0200 @@ -4,7 +4,7 @@ # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 # Free Software Foundation, Inc. -timestamp='2008-06-16' +timestamp='2008-09-08' # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software @@ -288,7 +288,7 @@ | v850 | v850e \ | we32k \ | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ - | z8k) + | z8k | z80) basic_machine=$basic_machine-unknown ;; m6811 | m68hc11 | m6812 | m68hc12) @@ -375,7 +375,7 @@ | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ | xstormy16-* | xtensa*-* \ | ymp-* \ - | z8k-*) + | z8k-* | z80-*) ;; # Recognize the basic CPU types without company name, with glob match. xtensa*) @@ -1140,6 +1140,10 @@ basic_machine=z8k-unknown os=-sim ;; + z80-*-coff) + basic_machine=z80-unknown + os=-sim + ;; none) basic_machine=none-none os=-none diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/openmpi-1.2.7/orte/mca/pls/rsh/pls_rsh_module.c new/openmpi-1.2.8/orte/mca/pls/rsh/pls_rsh_module.c --- old/openmpi-1.2.7/orte/mca/pls/rsh/pls_rsh_module.c 2008-08-25 21:17:22.000000000 +0200 +++ new/openmpi-1.2.8/orte/mca/pls/rsh/pls_rsh_module.c 2008-10-09 00:20:09.000000000 +0200 @@ -463,11 +463,9 @@ int rc; sigset_t sigs; struct passwd *p; - bool remote_sh = false, remote_csh = false; - bool local_sh = false, local_csh = false; + orte_pls_rsh_shell_t local_shell, remote_shell; char *lib_base = NULL, *bin_base = NULL; orte_pls_daemon_info_t *dmn; - orte_pls_rsh_shell_t shell; if (mca_pls_rsh_component.timing) { if (0 != gettimeofday(&joblaunchstart, NULL)) { @@ -571,71 +569,54 @@ } /* What is our local shell? */ - shell = ORTE_PLS_RSH_SHELL_UNKNOWN; + local_shell = ORTE_PLS_RSH_SHELL_UNKNOWN; p = getpwuid(getuid()); if (NULL != p) { param = p->pw_shell; - shell = find_shell(p->pw_shell); + local_shell = find_shell(p->pw_shell); } /* If we didn't find it in getpwuid(), try looking at the $SHELL environment variable (see https://svn.open-mpi.org/trac/ompi/ticket/1060) */ - if (ORTE_PLS_RSH_SHELL_UNKNOWN == shell && + if (ORTE_PLS_RSH_SHELL_UNKNOWN == local_shell && NULL != (param = getenv("SHELL"))) { - shell = find_shell(param); + local_shell = find_shell(param); } - switch (shell) { - case ORTE_PLS_RSH_SHELL_SH: /* fall through */ - case ORTE_PLS_RSH_SHELL_KSH: /* fall through */ - case ORTE_PLS_RSH_SHELL_ZSH: /* fall through */ - case ORTE_PLS_RSH_SHELL_BASH: local_sh = true; break; - case ORTE_PLS_RSH_SHELL_TCSH: /* fall through */ - case ORTE_PLS_RSH_SHELL_CSH: local_csh = true; break; - default: - opal_output(0, "WARNING: local probe returned unhandled shell:%s assuming bash\n", + if (ORTE_PLS_RSH_SHELL_UNKNOWN == local_shell) { + opal_output(0, "WARNING: local probe returned unhandled shell (%s) -- assuming bash\n", (NULL != param) ? param : "unknown"); - remote_sh = true; - break; + local_shell = ORTE_PLS_RSH_SHELL_BASH; } if (mca_pls_rsh_component.debug) { - opal_output(0, "pls:rsh: local csh: %d, local sh: %d\n", - local_csh, local_sh); + opal_output(0, "pls:rsh: local shell: %d (%s)", + local_shell, orte_pls_rsh_shell_name[local_shell]); } /* What is our remote shell? */ if (mca_pls_rsh_component.assume_same_shell) { - remote_sh = local_sh; - remote_csh = local_csh; + remote_shell = local_shell; if (mca_pls_rsh_component.debug) { opal_output(0, "pls:rsh: assuming same remote shell as local shell"); } } else { - orte_pls_rsh_shell_t shell; rmaps_node = (orte_mapped_node_t*)opal_list_get_first(&map->nodes); - rc = orte_pls_rsh_probe(rmaps_node, &shell); + rc = orte_pls_rsh_probe(rmaps_node, &remote_shell); if (ORTE_SUCCESS != rc) { ORTE_ERROR_LOG(rc); return rc; } - switch (shell) { - case ORTE_PLS_RSH_SHELL_SH: /* fall through */ - case ORTE_PLS_RSH_SHELL_KSH: /* fall through */ - case ORTE_PLS_RSH_SHELL_ZSH: /* fall through */ - case ORTE_PLS_RSH_SHELL_BASH: remote_sh = true; break; - case ORTE_PLS_RSH_SHELL_TCSH: /* fall through */ - case ORTE_PLS_RSH_SHELL_CSH: remote_csh = true; break; - default: + if (ORTE_PLS_RSH_SHELL_UNKNOWN == remote_shell) { opal_output(0, "WARNING: rsh probe returned unhandled shell; assuming bash\n"); - remote_sh = true; + remote_shell = ORTE_PLS_RSH_SHELL_BASH; } } if (mca_pls_rsh_component.debug) { - opal_output(0, "pls:rsh: remote csh: %d, remote sh: %d\n", - remote_csh, remote_sh); + opal_output(0, "pls:rsh: remote shell: %d (%s)", + remote_shell, orte_pls_rsh_shell_name[local_shell]); } /* @@ -646,9 +627,15 @@ node_name_index1 = argc; opal_argv_append(&argc, &argv, "<template>"); - /* Do we need to source .profile on the remote side? */ + /* Do we need to source .profile on the remote side? + - sh: yes (see bash(1)) + - ksh: yes (see ksh(1)) + - bash: no (see bash(1)) + - [t]csh: no (see csh(1) and tcsh(1)) + - zsh: no (see http://zsh.sourceforge.net/FAQ/zshfaq03.html#l19) */ - if (!(remote_csh || remote_sh)) { + if (ORTE_PLS_RSH_SHELL_SH == remote_shell || + ORTE_PLS_RSH_SHELL_KSH == remote_shell) { int i; tmp = opal_argv_split("( test ! -r ./.profile || . ./.profile;", ' '); if (NULL == tmp) { @@ -718,7 +705,8 @@ free(param); local_exec_index_end = argc; - if (!(remote_csh || remote_sh)) { + if (ORTE_PLS_RSH_SHELL_SH == remote_shell || + ORTE_PLS_RSH_SHELL_KSH == remote_shell) { opal_argv_append(&argc, &argv, ")"); } if (mca_pls_rsh_component.debug) { @@ -733,10 +721,10 @@ /* Figure out the basenames for the libdir and bindir. This requires some explanation: - - Use opal_install_dirs.libdir and opal_install_dirs.bindir instead of -D'ing some macros - in this directory's Makefile.am because it makes all the - dependencies work out correctly. These are defined in - opal/install_dirs.h. + - Use opal_install_dirs.libdir and opal_install_dirs.bindir + instead of -D'ing some macros in this directory's Makefile.am + because it makes all the dependencies work out correctly. + These are defined in opal/install_dirs.h. - After a discussion on the devel-core mailing list, the developers decided that we should use the local directory @@ -848,10 +836,11 @@ rmaps_node->nodename); } - /* We don't need to sense an oversubscribed condition and set the sched_yield - * for the node as we are only launching the daemons at this time. The daemons - * are now smart enough to set the oversubscribed condition themselves when - * they launch the local procs. + /* We don't need to sense an oversubscribed condition and + * set the sched_yield for the node as we are only + * launching the daemons at this time. The daemons are now + * smart enough to set the oversubscribed condition + * themselves when they launch the local procs. */ /* Is this a local launch? @@ -982,7 +971,10 @@ if (NULL != prefix_dir) { char *opal_prefix = getenv("OPAL_PREFIX"); - if (remote_sh) { + if (ORTE_PLS_RSH_SHELL_SH == remote_shell || + ORTE_PLS_RSH_SHELL_BASH == remote_shell || + ORTE_PLS_RSH_SHELL_KSH == remote_shell || + ORTE_PLS_RSH_SHELL_ZSH == remote_shell) { asprintf (&argv[local_exec_index], "%s%s%s PATH=%s/%s:$PATH ; export PATH ; " "LD_LIBRARY_PATH=%s/%s:$LD_LIBRARY_PATH ; export LD_LIBRARY_PATH ; " @@ -994,8 +986,8 @@ prefix_dir, lib_base, prefix_dir, bin_base, mca_pls_rsh_component.orted); - } - if (remote_csh) { + } else if (ORTE_PLS_RSH_SHELL_CSH == remote_shell || + ORTE_PLS_RSH_SHELL_TCSH == remote_shell) { /* [t]csh is a bit more challenging -- we have to check whether LD_LIBRARY_PATH is already set before we try to set it. diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/openmpi-1.2.7/orte/mca/ras/slurm/ras_slurm_module.c new/openmpi-1.2.8/orte/mca/ras/slurm/ras_slurm_module.c --- old/openmpi-1.2.7/orte/mca/ras/slurm/ras_slurm_module.c 2008-08-25 21:17:17.000000000 +0200 +++ new/openmpi-1.2.8/orte/mca/ras/slurm/ras_slurm_module.c 2008-10-09 00:20:09.000000000 +0200 @@ -82,11 +82,18 @@ } regexp = strdup(slurm_node_str); - tasks_per_node = getenv("SLURM_TASKS_PER_NODE"); + tasks_per_node = getenv("SLURM_JOB_CPUS_PER_NODE"); if (NULL == tasks_per_node) { - opal_show_help("help-ras-slurm.txt", "slurm-env-var-not-found", 1, - "SLURM_TASKS_PER_NODE"); - return ORTE_ERR_NOT_FOUND; + /* didn't find SLURM 1.2 or above envar - look for prior + * version + */ + tasks_per_node = getenv("SLURM_TASKS_PER_NODE"); + if (NULL == tasks_per_node) { + /* couldn't find any version - abort */ + opal_show_help("help-ras-slurm.txt", "slurm-env-var-not-found", 1, + "SLURM_JOB_CPUS_PER NODE or SLURM_TASKS_PER_NODE"); + return ORTE_ERR_NOT_FOUND; + } } node_tasks = strdup(tasks_per_node); diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/openmpi-1.2.7/orte/tools/orterun/totalview.c new/openmpi-1.2.8/orte/tools/orterun/totalview.c --- old/openmpi-1.2.7/orte/tools/orterun/totalview.c 2008-08-25 21:17:23.000000000 +0200 +++ new/openmpi-1.2.8/orte/tools/orterun/totalview.c 2008-10-09 00:20:09.000000000 +0200 @@ -478,7 +478,6 @@ /* initialize MPIR_proctable */ - i=0; for (item = opal_list_get_first(&map->nodes); item != opal_list_get_end(&map->nodes); item = opal_list_get_next(item)) { @@ -489,6 +488,10 @@ item2 = opal_list_get_next(item2)) { proc = (orte_mapped_proc_t*)item2; appctx = map->apps[proc->app_idx]; + /* store this data in the location whose index + * corresponds to the proc's rank + */ + i = proc->rank; MPIR_proctable[i].host_name = strdup(node->nodename); if ( 0 == strncmp(appctx->app, OPAL_PATH_SEP, 1 )) { @@ -499,7 +502,6 @@ opal_os_path( false, appctx->cwd, appctx->app, NULL ); } MPIR_proctable[i].pid = proc->pid; - i++; } } OBJ_RELEASE(map); diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/openmpi-1.2.7/VERSION new/openmpi-1.2.8/VERSION --- old/openmpi-1.2.7/VERSION 2008-08-25 21:41:50.000000000 +0200 +++ new/openmpi-1.2.8/VERSION 2008-10-09 00:42:09.000000000 +0200 @@ -8,7 +8,7 @@ major=1 minor=2 -release=7 +release=8 # greek is used for alpha or beta release tags. If it is non-empty, # it will be appended to the version number. It does not have to be @@ -34,4 +34,4 @@ # distribution tarball is being made from an SVN checkout, the value # of svn_r in this file is replaced with the output of "svnversion". -svn_r=r19401 +svn_r=r19718 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org