1. 30 Apr, 2014 3 commits
    • Su Huang's avatar
      pamid: mapped datatypes needed to be unmapped · 2487b73e
      Su Huang authored
      for one-sided communication, the completion of a local operation is when
      the completion handler of the operation is activated. The datatype
      associated with the operation can not be freed until the completion
      handler is activated which is MPIDI_Win_DoneCB. In the current code, the
      mapped datatype is unmapped immediately freed after the routine gets the
      control from PAMI calls. The calls could be PAMI_Send, PAMI_Get, PAMI_Rget,
      PAMI_Put and PAMI_Rget. Please note that the datatype is needed for PAMI
      to process the data.
      The fix is to unmap the datatype in MPIDI_Win_DoneCB() and remove all
      "unmap" datatype operations from put and get operations.
      Signed-off-by: default avatarMichael Blocksome <blocksom@us.ibm.com>
    • Su Huang's avatar
      pamid: fix a bug in MPID_Win_free · d2fadf79
      Su Huang authored
      MPID_Win_allocated_shared(), the routine could obtain memory space via either
      shmget() or MPIU_Malloc() if one task on a node. In MPID_Win_free(), the
      routine only frees shared memory space.
      The fix is to free none-shared space if there is one.
      Signed-off-by: default avatarMichael Blocksome <blocksom@us.ibm.com>
    • Su Huang's avatar
      pamid: memory leak on handles for request based RMA operations · 6bef6711
      Su Huang authored
      Request based RMA communication operations require that each operation
      allocates a communication request object and associates it with the request
      handle (the argument request) that can be used to wait or test for
      completion. Both the structures for the request handle and the window
      structure are not being freed. The problem is when the request handle
      is created, the ref_count of the object is set to 2. When
      MPID_Request_releas_inline() is called by a request based RMA operation,
      the ref_count of the handle is decremented to 1. The allocated memory spaces
      are freed only if ref_count is equal to 0.
      To fix the problem, set the ref_count to 1 when the request handle is
      created. In MPID_Request_release_inline, the routine decrements the
      ref_count to 0 which leads the memory space be freed.
      Signed-off-by: default avatarMichael Blocksome <blocksom@us.ibm.com>
  2. 29 Apr, 2014 6 commits
  3. 28 Apr, 2014 4 commits
  4. 27 Apr, 2014 3 commits
  5. 26 Apr, 2014 2 commits
    • Wesley Bland's avatar
      Mark ft/isendalive as xfail · 00d075e2
      Wesley Bland authored
      This test is behaving badly now as well. Given the overhaul of the ft system
      that's coming, we're marking these tests as xfail now instead of putting a lot
      of work into fixing them. They'll get cleaned up when the ULFM changes go in.
      No reviewer
    • Pavan Balaji's avatar
      Fix the release script. · d3f43b1f
      Pavan Balaji authored
      We moved away from --enable-f77 and --enable-fc to --enable-fortran.
      No reviewer.
  6. 25 Apr, 2014 1 commit
  7. 24 Apr, 2014 1 commit
    • Rob Latham's avatar
      Disable "create on one, open on all" for NTFS · 99ecd73f
      Rob Latham authored
      Some NTFS deployments don't like the optimization where one process
      creates a file and all processes open.  From Mark Allen: "On windows
      when multiple hosts were used, it ended up that in ad_ntfs_open.c rank 0
      used CreateFile() with OPEN_ALWAYS and everybody else used
      OPEN_EXISTING, and those ranks all saw ERROR_FILE_NOT_FOUND.  As a fix I
      added a retry loop and eventually (within 4-5 sec) the remote ranks
      would see the file."
      Simply have all processes create the file, as was done long long ago.
      Signed-off-by: default avatarMark Allen <markalle@us.ibm.com>
  8. 23 Apr, 2014 15 commits
  9. 22 Apr, 2014 1 commit
  10. 21 Apr, 2014 2 commits
  11. 18 Apr, 2014 1 commit
    • Wesley Bland's avatar
      Makes sure that the status object is always defined · cdd8e0b7
      Wesley Bland authored
      In the MPIC_Sendrecv functions, the status object should always be defined
      since we use it internally. This won't have any impact on performance since
      the default is always to have FT collectives turned on anyway, but it will
      prevent a crash when someone overwrites that default.
      Fixes #2026
      Signed-off-by: Sangmin Seo's avatarSangmin Seo <sseo@anl.gov>
  12. 15 Apr, 2014 1 commit
    • Pavan Balaji's avatar
      Create a dummy function that calls all ROMIO public symbols. · ffcc4904
      Pavan Balaji authored and Kenneth Raffenetti's avatar Kenneth Raffenetti committed
      All ROMIO public symbols are being added into the libromio convenience
      library, which is LIBADD'ed into libmpi.  The correct behavior would
      be for libtool to add -Wl,--whole-archive to the link line, thus
      forcing all symbols in libromio to end up in libmpi.  However, in some
      cases, this is not working out correctly.  For example, with the
      Absoft compiler, the linker flags were being reordered thus causing
      the -Wl,--whole-archive flag to not correspond to libromio.
      Consequently, only symbols that were used from within the other
      functions of libmpi were being included.
      For example, Absoft's linker reordering is below:
      % af77 -v -shared -fPIC src/mpi/attr/.libs/lib_libmpi_la-attrutil.o src/mpi_t/.libs/lib_libmpi_la-pvar_write.o \
        -Wl,--whole-archive src/mpi/romio/.libs/libromio.a -Wl,--no-whole-archive  \
        -Wl,-rpath -Wl,/sandbox/balaji/build-absoft/src/mpl/.libs \
        -Wl,-rpath -Wl,/sandbox/balaji/build-absoft/src/openpa/src/.libs \
        -Wl,-rpath -Wl,/sandbox/balaji/build-absoft/install/lib \
        -L/sandbox/balaji/build-absoft/src/mpl -L/sandbox/balaji/build-absoft/src/openpa/src \
        /sandbox/balaji/build-absoft/src/mpl/.libs/libmpl.so /sandbox/balaji/build-absoft/src/openpa/src/.libs/libopa.so \
        -lrt -lpthread  -O0   -Wl,-soname -Wl,libmpi.so.12 -o lib/.libs/libmpi.so.12.0.0
      gcc src/mpi/attr/.libs/lib_libmpi_la-attrutil.o src/mpi_t/.libs/lib_libmpi_la-pvar_write.o \
          /sandbox/balaji/build-absoft/src/mpl/.libs/libmpl.so /sandbox/balaji/build-absoft/src/openpa/src/.libs/libopa.so \
          -L/soft/com/packages/absoft11.0/shlib64 -Wl,--whole-archive -Wl,--no-whole-archive \
          -Wl,-rpath -Wl,/sandbox/balaji/build-absoft/src/mpl/.libs \
          -Wl,-rpath -Wl,/sandbox/balaji/build-absoft/src/openpa/src/.libs \
          -Wl,-rpath -Wl,/sandbox/balaji/build-absoft/install/lib \
          -L/sandbox/balaji/build-absoft/src/mpl -L/sandbox/balaji/build-absoft/src/openpa/src \
          -Wl,-soname -Wl,libmpi.so.12 -shared -o lib/.libs/libmpi.so.12.0.0 src/mpi/romio/.libs/libromio.a \
          -lrt -lpthread -laf90math -lafio -lamisc -laf77math -lm -lmv
      In the past, we got lucky in two ways:
      1. We were including all the Fortran 77 symbols into libmpi.  Since
      the Fortran symbols were calling the C ROMIO symbols, those ROMIO
      symbols were pulled in even without -Wl,--whole-archive.
      2. The problem only showed up with absoft and nag, both of which are
      Fortran-only compilers.  If a C compiler has this issue, it should
      have shown up when Fortran support is disabled.
      Signed-off-by: Kenneth Raffenetti's avatarKen Raffenetti <raffenet@mcs.anl.gov>