[mpich-commits] [mpich] MPICH primary repository branch, master, updated. v3.0.4-342-g90522a1

mysql vizuser noreply at mpich.org
Tue Jul 16 15:42:48 CDT 2013


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "MPICH primary repository".

The branch, master has been updated
       via  90522a130cef97ffe5c0870b4a9ab6b40f17fa58 (commit)
      from  60a2d9fe221f4b98a611a360cf0a2ba822be6677 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://git.mpich.org/mpich.git/commitdiff/90522a130cef97ffe5c0870b4a9ab6b40f17fa58

commit 90522a130cef97ffe5c0870b4a9ab6b40f17fa58
Author: Su Huang <suhuang at us.ibm.com>
Date:   Tue Jul 9 10:09:46 2013 -0400

    Fix uninitialized parameters for one sided communication in pamid
    
    (ibm) D191388 : MPICOM case with mpich2 hit Assertion failed issue
    (ibm) AIX71J
    
    Signed-off-by: Charles Archer <archerc at us.ibm.com>

diff --git a/src/mpid/pamid/src/onesided/mpid_win_get.c b/src/mpid/pamid/src/onesided/mpid_win_get.c
index d9eaf93..79a1c0b 100644
--- a/src/mpid/pamid/src/onesided/mpid_win_get.c
+++ b/src/mpid/pamid/src/onesided/mpid_win_get.c
@@ -65,28 +65,19 @@ MPIDI_Get_use_pami_rget(pami_context_t context, MPIDI_Win_request * req, int *fr
 {
   pami_result_t rc;
   void  *map=NULL;
+  pami_rget_simple_t  params;
 
-  pami_rget_simple_t params = {
-    .rma = {
-      .dest = req->dest,
-      .hints = {
-	.buffer_registered = PAMI_HINT_ENABLE,
-	.use_rdma          = PAMI_HINT_ENABLE,
-      },
-      .bytes   = 0,
-      .cookie  = req,
-      .done_fn = MPIDI_Win_DoneCB,
-    },
-    .rdma = {
-      .local = {
-	.mr = &req->origin.memregion,
-      },
-      .remote = {
-	.mr     = &req->win->mpid.info[req->target.rank].memregion,
-	.offset = req->offset,
-      },
-    },
-  };
+  params=zero_rget_parms;
+
+  params.rma.dest=req->dest;
+  params.rma.hints.buffer_registered = PAMI_HINT_ENABLE;
+  params.rma.hints.use_rdma          = PAMI_HINT_ENABLE;
+  params.rma.bytes   = 0;
+  params.rma.cookie  = req;
+  params.rma.done_fn = MPIDI_Win_DoneCB;
+  params.rdma.local.mr=&req->origin.memregion;
+  params.rdma.remote.mr=&req->win->mpid.info[req->target.rank].memregion;
+  params.rdma.remote.offset= req->offset;
 
   struct MPIDI_Win_sync* sync = &req->win->mpid.sync;
   TRACE_ERR("Start       index=%u/%d  l-addr=%p  r-base=%p  r-offset=%zu (sync->started=%u  sync->complete=%u)\n",
@@ -136,25 +127,20 @@ MPIDI_Get_use_pami_get(pami_context_t context, MPIDI_Win_request * req, int *fre
 {
   pami_result_t rc;
   void  *map=NULL;
+  pami_get_simple_t params;
+
+  params=zero_get_parms;
 
-  pami_get_simple_t params = {
-    .rma = {
-      .dest = req->dest,
-      .hints = {
-	.use_rdma          = PAMI_HINT_DEFAULT,
+  params.rma.dest=req->dest;
+  params.rma.hints.use_rdma          = PAMI_HINT_DEFAULT;
 #ifndef OUT_OF_ORDER_HANDLING
-	.no_long_header= 1,
+  params.rma.hints.no_long_header= 1,
 #endif
-      },
-      .bytes   = 0,
-      .cookie  = req,
-      .done_fn = MPIDI_Win_DoneCB,
-    },
-    .addr = {
-      .local   = req->buffer,
-      .remote  = req->win->mpid.info[req->target.rank].base_addr,
-    },
-  };
+  params.rma.bytes   = 0;
+  params.rma.cookie  = req;
+  params.rma.done_fn = MPIDI_Win_DoneCB;
+  params.addr.local=req->buffer;
+  params.addr.remote= req->win->mpid.info[req->target.rank].base_addr;
 
   struct MPIDI_Win_sync* sync = &req->win->mpid.sync;
   TRACE_ERR("Start       index=%u/%d  l-addr=%p  r-base=%p  r-offset=%zu (sync->started=%u  sync->complete=%u)\n",
diff --git a/src/mpid/pamid/src/onesided/mpid_win_put.c b/src/mpid/pamid/src/onesided/mpid_win_put.c
index 92fb477..ecfd444 100644
--- a/src/mpid/pamid/src/onesided/mpid_win_put.c
+++ b/src/mpid/pamid/src/onesided/mpid_win_put.c
@@ -67,7 +67,7 @@ MPIDI_Put_use_pami_rput(pami_context_t context, MPIDI_Win_request * req,int *fre
   void  *map;
   pami_rput_simple_t params;
   /* params need to zero out to avoid passing garbage to PAMI */
-  memset((void *) &params,0,sizeof(pami_rput_simple_t));
+  params=zero_rput_parms;
 
   params.rma.dest=req->dest;
   params.rma.hints.buffer_registered = PAMI_HINT_ENABLE;
@@ -129,28 +129,22 @@ MPIDI_Put_use_pami_put(pami_context_t   context, MPIDI_Win_request * req,int *fr
 {
   pami_result_t rc;
   void  *map;
+  pami_put_simple_t params;
 
-  pami_put_simple_t params = {
-    .rma  = {
-      .dest    = req->dest,
-      .hints   = {
-	.use_rdma=       PAMI_HINT_DEFAULT,
+  params = zero_put_parms;
+
+  params.rma.dest=req->dest;
+  params.rma.hints.use_rdma          = PAMI_HINT_DEFAULT;
 #ifndef OUT_OF_ORDER_HANDLING
-	.no_long_header= 1,
+  params.rma.hints.no_long_header= 1,
 #endif
-      },
-      .bytes   = 0,
-      .cookie  = req,
-      .done_fn = NULL,
-    },
-    .addr = {
-      .local   = req->buffer,
-      .remote  = req->win->mpid.info[req->target.rank].base_addr,
-    },
-    .put = {
-      .rdone_fn = MPIDI_Win_DoneCB,
-    },
-  };
+  params.rma.bytes   = 0;
+  params.rma.cookie  = req;
+  params.rma.done_fn = NULL;
+  params.addr.local=req->buffer;
+  params.addr.remote=req->win->mpid.info[req->target.rank].base_addr;
+  params.put.rdone_fn= MPIDI_Win_DoneCB;
+
   struct MPIDI_Win_sync* sync = &req->win->mpid.sync;
   TRACE_ERR("Start       index=%u/%d  l-addr=%p  r-base=%p  r-offset=%zu (sync->started=%u  sync->complete=%u)\n",
 	    req->state.index, req->target.dt.num_contig, req->buffer, req->win->mpid.info[req->target.rank].base_addr, req->offset, sync->started, sync->complete);
diff --git a/src/mpid/pamid/src/onesided/mpidi_onesided.h b/src/mpid/pamid/src/onesided/mpidi_onesided.h
index d2f7024..af888bd 100644
--- a/src/mpid/pamid/src/onesided/mpidi_onesided.h
+++ b/src/mpid/pamid/src/onesided/mpidi_onesided.h
@@ -24,6 +24,10 @@
 #ifndef __src_onesided_mpidi_onesided_h__
 #define __src_onesided_mpidi_onesided_h__
 
+pami_rget_simple_t zero_rget_parms;
+pami_get_simple_t zero_get_parms;
+pami_rput_simple_t zero_rput_parms;
+pami_put_simple_t zero_put_parms;
 
 /**
  * \brief One-sided Message Types

-----------------------------------------------------------------------

Summary of changes:
 src/mpid/pamid/src/onesided/mpid_win_get.c   |   60 ++++++++++----------------
 src/mpid/pamid/src/onesided/mpid_win_put.c   |   34 ++++++---------
 src/mpid/pamid/src/onesided/mpidi_onesided.h |    4 ++
 3 files changed, 41 insertions(+), 57 deletions(-)


hooks/post-receive
-- 
MPICH primary repository


More information about the commits mailing list