[mpich-commits] [mpich] MPICH primary repository branch, master, updated. v3.1.3-173-geedd51e

Service Account noreply at mpich.org
Tue Nov 11 10:23:46 CST 2014


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  eedd51e04717c49e36d378027e12075ad405789f (commit)
       via  91070686c3b0b6d98c3c21c2e503d9d0b0eb6282 (commit)
       via  c235c756c1215c6453bf8f95c0818a3c355684bc (commit)
       via  f695c96d9a54aaeb599aedad2001da89d5732ce6 (commit)
       via  5fd735b8e84c4a7d6eddbe6bb244fd37be789dfc (commit)
       via  57b64dad19eda61811775d59720e61c611c591ad (commit)
       via  4ab9c23523108401125b2132903c0a41773b5ab3 (commit)
      from  28e79b31121c2f2ec4a46422e78ec4bcaf67b18b (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/eedd51e04717c49e36d378027e12075ad405789f

commit eedd51e04717c49e36d378027e12075ad405789f
Author: Xin Zhao <xinzhao3 at illinois.edu>
Date:   Tue Nov 11 09:45:00 2014 -0600

    Delete unused variable.
    
    Signed-off-by: Rob Latham <robl at mcs.anl.gov>

diff --git a/src/mpid/ch3/src/ch3u_rma_sync.c b/src/mpid/ch3/src/ch3u_rma_sync.c
index ffaf2d9..aea2190 100644
--- a/src/mpid/ch3/src/ch3u_rma_sync.c
+++ b/src/mpid/ch3/src/ch3u_rma_sync.c
@@ -578,7 +578,7 @@ int MPIDI_Win_start(MPID_Group * group_ptr, int assert, MPID_Win * win_ptr)
     win_ptr->start_grp_size = group_ptr->size;
 
     if ((assert & MPI_MODE_NOCHECK) == 0) {
-        int i, intra_cnt, inter_cnt;
+        int i, intra_cnt;
         MPI_Request *intra_start_req = NULL;
         MPI_Status *intra_start_status = NULL;
         MPID_Comm *comm_ptr = win_ptr->comm_ptr;
@@ -626,7 +626,6 @@ int MPIDI_Win_start(MPID_Group * group_ptr, int assert, MPID_Win * win_ptr)
                 }
                 else {
                     win_ptr->start_req[i] = req_ptr->handle;
-                    inter_cnt++;
                 }
             }
             else {

http://git.mpich.org/mpich.git/commitdiff/91070686c3b0b6d98c3c21c2e503d9d0b0eb6282

commit 91070686c3b0b6d98c3c21c2e503d9d0b0eb6282
Author: Xin Zhao <xinzhao3 at illinois.edu>
Date:   Mon Nov 10 17:30:19 2014 -0600

    Delete no longer needed file.
    
    We already moved all functions from src/mpid/ch3/src/ch3u_rma_acc_ops.c
    to src/mpid/ch3/src/ch3u_rma_ops.c and deleted the previous one from
    Makefile.mk, here we just delete this file.
    
    Signed-off-by: Rob Latham <robl at mcs.anl.gov>

diff --git a/src/mpid/ch3/src/ch3u_rma_acc_ops.c b/src/mpid/ch3/src/ch3u_rma_acc_ops.c
deleted file mode 100644
index 5d72483..0000000
--- a/src/mpid/ch3/src/ch3u_rma_acc_ops.c
+++ /dev/null
@@ -1,306 +0,0 @@
-/* -*- Mode: C; c-basic-offset:4 ; indent-tabs-mode:nil ; -*- */
-/*
- *  (C) 2001 by Argonne National Laboratory.
- *      See COPYRIGHT in top-level directory.
- */
-
-#include "mpidrma.h"
-
-#undef FUNCNAME
-#define FUNCNAME MPIDI_Get_accumulate
-#undef FCNAME
-#define FCNAME MPIDI_QUOTE(FUNCNAME)
-int MPIDI_Get_accumulate(const void *origin_addr, int origin_count,
-                         MPI_Datatype origin_datatype, void *result_addr, int result_count,
-                         MPI_Datatype result_datatype, int target_rank, MPI_Aint target_disp,
-                         int target_count, MPI_Datatype target_datatype, MPI_Op op,
-                         MPID_Win * win_ptr)
-{
-    int mpi_errno = MPI_SUCCESS;
-    MPIDI_msg_sz_t data_sz;
-    int rank;
-    int dt_contig ATTRIBUTE((unused));
-    MPI_Aint dt_true_lb ATTRIBUTE((unused));
-    MPID_Datatype *dtp;
-    MPIDI_VC_t *orig_vc = NULL, *target_vc = NULL;
-    MPIDI_STATE_DECL(MPID_STATE_MPIDI_GET_ACCUMULATE);
-
-    MPIDI_RMA_FUNC_ENTER(MPID_STATE_MPIDI_GET_ACCUMULATE);
-
-    if (target_rank == MPI_PROC_NULL) {
-        goto fn_exit;
-    }
-
-    if (win_ptr->epoch_state == MPIDI_EPOCH_NONE && win_ptr->fence_issued) {
-        win_ptr->epoch_state = MPIDI_EPOCH_FENCE;
-    }
-
-    MPIU_ERR_CHKANDJUMP(win_ptr->epoch_state == MPIDI_EPOCH_NONE,
-                        mpi_errno, MPI_ERR_RMA_SYNC, "**rmasync");
-
-    MPIDI_Datatype_get_info(target_count, target_datatype, dt_contig, data_sz, dtp, dt_true_lb);
-
-    if (data_sz == 0) {
-        goto fn_exit;
-    }
-
-    rank = win_ptr->comm_ptr->rank;
-
-    if (win_ptr->shm_allocated == TRUE && target_rank != rank &&
-        win_ptr->create_flavor != MPI_WIN_FLAVOR_SHARED) {
-        /* check if target is local and shared memory is allocated on window,
-         * if so, we directly perform this operation on shared memory region. */
-
-        /* FIXME: Here we decide whether to perform SHM operations by checking if origin and target are on
-         * the same node. However, in ch3:sock, even if origin and target are on the same node, they do
-         * not within the same SHM region. Here we filter out ch3:sock by checking shm_allocated flag first,
-         * which is only set to TRUE when SHM region is allocated in nemesis.
-         * In future we need to figure out a way to check if origin and target are in the same "SHM comm".
-         */
-        MPIDI_Comm_get_vc(win_ptr->comm_ptr, rank, &orig_vc);
-        MPIDI_Comm_get_vc(win_ptr->comm_ptr, target_rank, &target_vc);
-    }
-
-    /* Do =! rank first (most likely branch?) */
-    if (target_rank == rank || win_ptr->create_flavor == MPI_WIN_FLAVOR_SHARED ||
-        (win_ptr->shm_allocated == TRUE && orig_vc->node_id == target_vc->node_id)) {
-        mpi_errno = MPIDI_CH3I_Shm_get_acc_op(origin_addr, origin_count, origin_datatype,
-                                              result_addr, result_count, result_datatype,
-                                              target_rank, target_disp, target_count,
-                                              target_datatype, op, win_ptr);
-        if (mpi_errno)
-            MPIU_ERR_POP(mpi_errno);
-    }
-    else {
-        MPIDI_RMA_Ops_list_t *ops_list = MPIDI_CH3I_RMA_Get_ops_list(win_ptr, target_rank);
-        MPIDI_RMA_Op_t *new_ptr = NULL;
-
-        /* Append the operation to the window's RMA ops queue */
-        mpi_errno = MPIDI_CH3I_RMA_Ops_alloc_tail(ops_list, &new_ptr);
-        if (mpi_errno) {
-            MPIU_ERR_POP(mpi_errno);
-        }
-
-        /* TODO: Can we use the MPIDI_RMA_ACC_CONTIG optimization? */
-
-        new_ptr->type = MPIDI_RMA_GET_ACCUMULATE;
-        /* Cast away const'ness for origin_address as MPIDI_RMA_Op_t
-         * contain both PUT and GET like ops */
-        new_ptr->origin_addr = (void *) origin_addr;
-        new_ptr->origin_count = origin_count;
-        new_ptr->origin_datatype = origin_datatype;
-        new_ptr->result_addr = result_addr;
-        new_ptr->result_count = result_count;
-        new_ptr->result_datatype = result_datatype;
-        new_ptr->target_rank = target_rank;
-        new_ptr->target_disp = target_disp;
-        new_ptr->target_count = target_count;
-        new_ptr->target_datatype = target_datatype;
-        new_ptr->op = op;
-
-        /* if source or target datatypes are derived, increment their
-         * reference counts */
-        if (op != MPI_NO_OP && !MPIR_DATATYPE_IS_PREDEFINED(origin_datatype)) {
-            MPID_Datatype_get_ptr(origin_datatype, dtp);
-            MPID_Datatype_add_ref(dtp);
-        }
-        if (!MPIR_DATATYPE_IS_PREDEFINED(result_datatype)) {
-            MPID_Datatype_get_ptr(result_datatype, dtp);
-            MPID_Datatype_add_ref(dtp);
-        }
-        if (!MPIR_DATATYPE_IS_PREDEFINED(target_datatype)) {
-            MPID_Datatype_get_ptr(target_datatype, dtp);
-            MPID_Datatype_add_ref(dtp);
-        }
-    }
-
-  fn_exit:
-    MPIDI_RMA_FUNC_EXIT(MPID_STATE_MPIDI_GET_ACCUMULATE);
-    return mpi_errno;
-
-    /* --BEGIN ERROR HANDLING-- */
-  fn_fail:
-    goto fn_exit;
-    /* --END ERROR HANDLING-- */
-}
-
-
-#undef FUNCNAME
-#define FUNCNAME MPIDI_Compare_and_swap
-#undef FCNAME
-#define FCNAME MPIDI_QUOTE(FUNCNAME)
-int MPIDI_Compare_and_swap(const void *origin_addr, const void *compare_addr,
-                           void *result_addr, MPI_Datatype datatype, int target_rank,
-                           MPI_Aint target_disp, MPID_Win * win_ptr)
-{
-    int mpi_errno = MPI_SUCCESS;
-    int rank;
-    MPIDI_VC_t *orig_vc = NULL, *target_vc = NULL;
-
-    MPIDI_STATE_DECL(MPID_STATE_MPIDI_COMPARE_AND_SWAP);
-    MPIDI_RMA_FUNC_ENTER(MPID_STATE_MPIDI_COMPARE_AND_SWAP);
-
-    if (target_rank == MPI_PROC_NULL) {
-        goto fn_exit;
-    }
-
-    if (win_ptr->epoch_state == MPIDI_EPOCH_NONE && win_ptr->fence_issued) {
-        win_ptr->epoch_state = MPIDI_EPOCH_FENCE;
-    }
-
-    MPIU_ERR_CHKANDJUMP(win_ptr->epoch_state == MPIDI_EPOCH_NONE,
-                        mpi_errno, MPI_ERR_RMA_SYNC, "**rmasync");
-
-    rank = win_ptr->comm_ptr->rank;
-
-    if (win_ptr->shm_allocated == TRUE && target_rank != rank &&
-        win_ptr->create_flavor != MPI_WIN_FLAVOR_SHARED) {
-        /* check if target is local and shared memory is allocated on window,
-         * if so, we directly perform this operation on shared memory region. */
-
-        /* FIXME: Here we decide whether to perform SHM operations by checking if origin and target are on
-         * the same node. However, in ch3:sock, even if origin and target are on the same node, they do
-         * not within the same SHM region. Here we filter out ch3:sock by checking shm_allocated flag first,
-         * which is only set to TRUE when SHM region is allocated in nemesis.
-         * In future we need to figure out a way to check if origin and target are in the same "SHM comm".
-         */
-        MPIDI_Comm_get_vc(win_ptr->comm_ptr, rank, &orig_vc);
-        MPIDI_Comm_get_vc(win_ptr->comm_ptr, target_rank, &target_vc);
-    }
-
-    /* The datatype must be predefined, and one of: C integer, Fortran integer,
-     * Logical, Multi-language types, or Byte.  This is checked above the ADI,
-     * so there's no need to check it again here. */
-
-    /* FIXME: For shared memory windows, we should provide an implementation
-     * that uses a processor atomic operation. */
-    if (target_rank == rank || win_ptr->create_flavor == MPI_WIN_FLAVOR_SHARED ||
-        (win_ptr->shm_allocated == TRUE && orig_vc->node_id == target_vc->node_id)) {
-        mpi_errno = MPIDI_CH3I_Shm_cas_op(origin_addr, compare_addr, result_addr,
-                                          datatype, target_rank, target_disp, win_ptr);
-        if (mpi_errno)
-            MPIU_ERR_POP(mpi_errno);
-    }
-    else {
-        MPIDI_RMA_Ops_list_t *ops_list = MPIDI_CH3I_RMA_Get_ops_list(win_ptr, target_rank);
-        MPIDI_RMA_Op_t *new_ptr = NULL;
-
-        /* Append this operation to the RMA ops queue */
-        mpi_errno = MPIDI_CH3I_RMA_Ops_alloc_tail(ops_list, &new_ptr);
-        if (mpi_errno) {
-            MPIU_ERR_POP(mpi_errno);
-        }
-
-        new_ptr->type = MPIDI_RMA_COMPARE_AND_SWAP;
-        new_ptr->origin_addr = (void *) origin_addr;
-        new_ptr->origin_count = 1;
-        new_ptr->origin_datatype = datatype;
-        new_ptr->target_rank = target_rank;
-        new_ptr->target_disp = target_disp;
-        new_ptr->target_count = 1;
-        new_ptr->target_datatype = datatype;
-        new_ptr->result_addr = result_addr;
-        new_ptr->result_count = 1;
-        new_ptr->result_datatype = datatype;
-        new_ptr->compare_addr = (void *) compare_addr;
-        new_ptr->compare_count = 1;
-        new_ptr->compare_datatype = datatype;
-    }
-
-  fn_exit:
-    MPIDI_RMA_FUNC_EXIT(MPID_STATE_MPIDI_COMPARE_AND_SWAP);
-    return mpi_errno;
-    /* --BEGIN ERROR HANDLING-- */
-  fn_fail:
-    goto fn_exit;
-    /* --END ERROR HANDLING-- */
-}
-
-
-#undef FUNCNAME
-#define FUNCNAME MPIDI_Fetch_and_op
-#undef FCNAME
-#define FCNAME MPIDI_QUOTE(FUNCNAME)
-int MPIDI_Fetch_and_op(const void *origin_addr, void *result_addr,
-                       MPI_Datatype datatype, int target_rank,
-                       MPI_Aint target_disp, MPI_Op op, MPID_Win * win_ptr)
-{
-    int mpi_errno = MPI_SUCCESS;
-    int rank;
-    MPIDI_VC_t *orig_vc = NULL, *target_vc = NULL;
-
-    MPIDI_STATE_DECL(MPID_STATE_MPIDI_FETCH_AND_OP);
-    MPIDI_RMA_FUNC_ENTER(MPID_STATE_MPIDI_FETCH_AND_OP);
-
-    if (target_rank == MPI_PROC_NULL) {
-        goto fn_exit;
-    }
-
-    if (win_ptr->epoch_state == MPIDI_EPOCH_NONE && win_ptr->fence_issued) {
-        win_ptr->epoch_state = MPIDI_EPOCH_FENCE;
-    }
-
-    MPIU_ERR_CHKANDJUMP(win_ptr->epoch_state == MPIDI_EPOCH_NONE,
-                        mpi_errno, MPI_ERR_RMA_SYNC, "**rmasync");
-
-    rank = win_ptr->comm_ptr->rank;
-
-    if (win_ptr->shm_allocated == TRUE && target_rank != rank &&
-        win_ptr->create_flavor != MPI_WIN_FLAVOR_SHARED) {
-        /* check if target is local and shared memory is allocated on window,
-         * if so, we directly perform this operation on shared memory region. */
-
-        /* FIXME: Here we decide whether to perform SHM operations by checking if origin and target are on
-         * the same node. However, in ch3:sock, even if origin and target are on the same node, they do
-         * not within the same SHM region. Here we filter out ch3:sock by checking shm_allocated flag first,
-         * which is only set to TRUE when SHM region is allocated in nemesis.
-         * In future we need to figure out a way to check if origin and target are in the same "SHM comm".
-         */
-        MPIDI_Comm_get_vc(win_ptr->comm_ptr, rank, &orig_vc);
-        MPIDI_Comm_get_vc(win_ptr->comm_ptr, target_rank, &target_vc);
-    }
-
-    /* The datatype and op must be predefined.  This is checked above the ADI,
-     * so there's no need to check it again here. */
-
-    /* FIXME: For shared memory windows, we should provide an implementation
-     * that uses a processor atomic operation. */
-    if (target_rank == rank || win_ptr->create_flavor == MPI_WIN_FLAVOR_SHARED ||
-        (win_ptr->shm_allocated == TRUE && orig_vc->node_id == target_vc->node_id)) {
-        mpi_errno = MPIDI_CH3I_Shm_fop_op(origin_addr, result_addr, datatype,
-                                          target_rank, target_disp, op, win_ptr);
-        if (mpi_errno)
-            MPIU_ERR_POP(mpi_errno);
-    }
-    else {
-        MPIDI_RMA_Ops_list_t *ops_list = MPIDI_CH3I_RMA_Get_ops_list(win_ptr, target_rank);
-        MPIDI_RMA_Op_t *new_ptr = NULL;
-
-        /* Append this operation to the RMA ops queue */
-        mpi_errno = MPIDI_CH3I_RMA_Ops_alloc_tail(ops_list, &new_ptr);
-        if (mpi_errno) {
-            MPIU_ERR_POP(mpi_errno);
-        }
-
-        new_ptr->type = MPIDI_RMA_FETCH_AND_OP;
-        new_ptr->origin_addr = (void *) origin_addr;
-        new_ptr->origin_count = 1;
-        new_ptr->origin_datatype = datatype;
-        new_ptr->target_rank = target_rank;
-        new_ptr->target_disp = target_disp;
-        new_ptr->target_count = 1;
-        new_ptr->target_datatype = datatype;
-        new_ptr->result_addr = result_addr;
-        new_ptr->result_count = 1;
-        new_ptr->result_datatype = datatype;
-        new_ptr->op = op;
-    }
-
-  fn_exit:
-    MPIDI_RMA_FUNC_EXIT(MPID_STATE_MPIDI_FETCH_AND_OP);
-    return mpi_errno;
-    /* --BEGIN ERROR HANDLING-- */
-  fn_fail:
-    goto fn_exit;
-    /* --END ERROR HANDLING-- */
-}

http://git.mpich.org/mpich.git/commitdiff/c235c756c1215c6453bf8f95c0818a3c355684bc

commit c235c756c1215c6453bf8f95c0818a3c355684bc
Author: Xin Zhao <xinzhao3 at illinois.edu>
Date:   Mon Nov 10 17:42:13 2014 -0600

    Delete no longer used epoch states.
    
    We already use window states to specify the current
    state in RMA epoch, therfore the epoch states are
    no longer used. Here we delete those states.
    
    Signed-off-by: Rob Latham <robl at mcs.anl.gov>

diff --git a/src/mpid/ch3/include/mpidpre.h b/src/mpid/ch3/include/mpidpre.h
index 517a5ff..7efc641 100644
--- a/src/mpid/ch3/include/mpidpre.h
+++ b/src/mpid/ch3/include/mpidpre.h
@@ -282,19 +282,6 @@ enum MPIDI_Win_info_arg_vals_accumulate_ops {
     MPIDI_ACC_OPS_SAME_OP_NO_OP
 };
 
-/* We start with an arbitrarily chosen number (27), to help with
- * debugging when an epoch state is not initialized or wrongly
- * initialized. */
-enum MPIDI_Win_epoch_states {
-    MPIDI_EPOCH_NONE = 27,
-    MPIDI_EPOCH_FENCE,
-    MPIDI_EPOCH_POST,
-    MPIDI_EPOCH_START,
-    MPIDI_EPOCH_PSCW,           /* Both post and start have been called. */
-    MPIDI_EPOCH_LOCK,
-    MPIDI_EPOCH_LOCK_ALL
-};
-
 struct MPIDI_Win_info_args {
     int no_locks;               /* valid flavor = all */
     int accumulate_ordering;

http://git.mpich.org/mpich.git/commitdiff/f695c96d9a54aaeb599aedad2001da89d5732ce6

commit f695c96d9a54aaeb599aedad2001da89d5732ce6
Author: Xin Zhao <xinzhao3 at illinois.edu>
Date:   Mon Nov 10 17:42:06 2014 -0600

    Bug-fixing: set window state to MPIDI_RMA_NONE when UNLOCK finishes.
    
    Signed-off-by: Rob Latham <robl at mcs.anl.gov>

diff --git a/src/mpid/ch3/src/ch3u_rma_sync.c b/src/mpid/ch3/src/ch3u_rma_sync.c
index 75a5e66..ffaf2d9 100644
--- a/src/mpid/ch3/src/ch3u_rma_sync.c
+++ b/src/mpid/ch3/src/ch3u_rma_sync.c
@@ -1597,7 +1597,7 @@ int MPIDI_Win_unlock_all(MPID_Win * win_ptr)
     win_ptr->posted_ops_cnt = 0;
     MPIU_Assert(win_ptr->active_req_cnt == 0);
 
-    win_ptr->states.access_state = MPIDI_EPOCH_NONE;
+    win_ptr->states.access_state = MPIDI_RMA_NONE;
     num_passive_win--;
     MPIU_Assert(num_passive_win >= 0);
 

http://git.mpich.org/mpich.git/commitdiff/5fd735b8e84c4a7d6eddbe6bb244fd37be789dfc

commit 5fd735b8e84c4a7d6eddbe6bb244fd37be789dfc
Author: Xin Zhao <xinzhao3 at illinois.edu>
Date:   Mon Nov 10 16:59:48 2014 -0600

    Delete redundant enum values for lock types.
    
    For lock type, we only need one internal value
    to specify cases when currently there is no passive
    lock issued from origin side or there is no passive
    lock imposed on target side. If there are passive
    locks, we directly use MPI_LOCK_SHARED and
    MPI_LOCK_EXCLUSIVE to indicate the lock type. This
    patch deletes redundant enum for lock types and just
    defines MPID_LOCK_NONE.
    
    Signed-off-by: Rob Latham <robl at mcs.anl.gov>

diff --git a/src/mpid/ch3/include/mpid_rma_oplist.h b/src/mpid/ch3/include/mpid_rma_oplist.h
index 3dd9176..85b672a 100644
--- a/src/mpid/ch3/include/mpid_rma_oplist.h
+++ b/src/mpid/ch3/include/mpid_rma_oplist.h
@@ -113,7 +113,7 @@ static inline MPIDI_RMA_Target_t *MPIDI_CH3I_Win_target_alloc(MPID_Win * win_ptr
 
     e->target_rank = -1;
     e->access_state = MPIDI_RMA_NONE;
-    e->lock_type = MPIDI_RMA_LOCK_TYPE_NONE;
+    e->lock_type = MPID_LOCK_NONE;
     e->lock_mode = 0;
     e->outstanding_lock = 0;
     e->disable_flush_local = 0;
diff --git a/src/mpid/ch3/include/mpid_rma_types.h b/src/mpid/ch3/include/mpid_rma_types.h
index 9a81c0e..bdcc9a0 100644
--- a/src/mpid/ch3/include/mpid_rma_types.h
+++ b/src/mpid/ch3/include/mpid_rma_types.h
@@ -16,22 +16,7 @@ enum MPIDI_RMA_Datatype {
     MPIDI_RMA_DATATYPE_DERIVED = 51
 };
 
-/* We start with an arbitrarily chosen number (60), to help with
- * debugging when a lock state is not initialized or wrongly
- * initialized. */
-enum MPID_Lock_state {
-    MPID_LOCK_NONE = 60,
-    MPID_LOCK_SHARED_ALL
-};
-
-/* We start with an arbitrarily chosen number (23), to help with
- * debugging when a lock type is not initialized or wrongly
- * initialized. */
-enum MPIDI_RMA_Lock_type {
-    MPIDI_RMA_LOCK_TYPE_NONE = 23,
-    MPIDI_RMA_LOCK_TYPE_SHARED,
-    MPIDI_RMA_LOCK_TYPE_EXCLUSIVE
-};
+#define MPID_LOCK_NONE 60
 
 /*
  * RMA Declarations.  We should move these into something separate from
@@ -98,7 +83,7 @@ typedef struct MPIDI_RMA_Target {
     struct MPIDI_RMA_Target *next;
     int target_rank;
     enum MPIDI_RMA_states access_state;
-    enum MPIDI_RMA_Lock_type lock_type; /* SHARED, EXCLUSIVE */
+    int lock_type; /* NONE, SHARED, EXCLUSIVE */
     int lock_mode;              /* e.g., MODE_NO_CHECK */
     int outstanding_lock;
     int disable_flush_local;

http://git.mpich.org/mpich.git/commitdiff/57b64dad19eda61811775d59720e61c611c591ad

commit 57b64dad19eda61811775d59720e61c611c591ad
Author: Xin Zhao <xinzhao3 at illinois.edu>
Date:   Mon Nov 10 16:36:52 2014 -0600

    Set the initial value of enum in RMA code to different values.
    
    It is helpful for us to find variables that are not initialized
    or wrongly initialized.
    
    Signed-off-by: Rob Latham <robl at mcs.anl.gov>

diff --git a/src/mpid/ch3/include/mpid_rma_types.h b/src/mpid/ch3/include/mpid_rma_types.h
index 1687436..9a81c0e 100644
--- a/src/mpid/ch3/include/mpid_rma_types.h
+++ b/src/mpid/ch3/include/mpid_rma_types.h
@@ -16,14 +16,17 @@ enum MPIDI_RMA_Datatype {
     MPIDI_RMA_DATATYPE_DERIVED = 51
 };
 
-/* We start with an arbitrarily chosen number (42), to help with
- * debugging when a packet type is not initialized or wrongly
+/* We start with an arbitrarily chosen number (60), to help with
+ * debugging when a lock state is not initialized or wrongly
  * initialized. */
 enum MPID_Lock_state {
-    MPID_LOCK_NONE = 42,
+    MPID_LOCK_NONE = 60,
     MPID_LOCK_SHARED_ALL
 };
 
+/* We start with an arbitrarily chosen number (23), to help with
+ * debugging when a lock type is not initialized or wrongly
+ * initialized. */
 enum MPIDI_RMA_Lock_type {
     MPIDI_RMA_LOCK_TYPE_NONE = 23,
     MPIDI_RMA_LOCK_TYPE_SHARED,
diff --git a/src/mpid/ch3/include/mpidpre.h b/src/mpid/ch3/include/mpidpre.h
index 4ae4f9b..517a5ff 100644
--- a/src/mpid/ch3/include/mpidpre.h
+++ b/src/mpid/ch3/include/mpidpre.h
@@ -224,22 +224,22 @@ typedef struct MPIDI_VC * MPID_VCR;
  * is a superset of FLUSH_LOCAL, and UNLOCK is a superset
  * of FLUSH.
  */
-/* We start with an arbitrarily chosen number (42), to help with
- * debugging when a packet type is not initialized or wrongly
+/* We start with an arbitrarily chosen number (58), to help with
+ * debugging when a sync type is not initialized or wrongly
  * initialized. */
 enum MPIDI_RMA_sync_types {
-    MPIDI_RMA_SYNC_NONE = 42,
+    MPIDI_RMA_SYNC_NONE = 58,
     MPIDI_RMA_SYNC_FLUSH_LOCAL,
     MPIDI_RMA_SYNC_FLUSH,
     MPIDI_RMA_SYNC_UNLOCK
 };
 
-/* We start with an arbitrarily chosen number (42), to help with
- * debugging when a packet type is not initialized or wrongly
+/* We start with an arbitrarily chosen number (63), to help with
+ * debugging when a window state is not initialized or wrongly
  * initialized. */
 enum MPIDI_RMA_states {
     /* window-wide states */
-    MPIDI_RMA_NONE = 42,
+    MPIDI_RMA_NONE = 63,
     MPIDI_RMA_FENCE_ISSUED,           /* access / exposure */
     MPIDI_RMA_FENCE_GRANTED,          /* access / exposure */
     MPIDI_RMA_PSCW_ISSUED,            /* access */
@@ -256,11 +256,11 @@ enum MPIDI_RMA_states {
     MPIDI_RMA_LOCK_GRANTED,           /* access */
 };
 
-/* We start with an arbitrarily chosen number (42), to help with
- * debugging when a packet type is not initialized or wrongly
+/* We start with an arbitrarily chosen number (19), to help with
+ * debugging when a lock state is not initialized or wrongly
  * initialized. */
 enum MPIDI_CH3_Lock_states {
-    MPIDI_CH3_WIN_LOCK_NONE = 42,
+    MPIDI_CH3_WIN_LOCK_NONE = 19,
     MPIDI_CH3_WIN_LOCK_CALLED,
     MPIDI_CH3_WIN_LOCK_REQUESTED,
     MPIDI_CH3_WIN_LOCK_GRANTED,
@@ -274,16 +274,19 @@ enum MPIDI_Win_info_arv_vals_accumulate_ordering {
     MPIDI_ACC_ORDER_WAW = 8
 };
 
+/* We start with an arbitrarily chosen number (11), to help with
+ * debugging when an window info is not initialized or wrongly
+ * initialized. */
 enum MPIDI_Win_info_arg_vals_accumulate_ops {
-    MPIDI_ACC_OPS_SAME_OP,
+    MPIDI_ACC_OPS_SAME_OP = 11,
     MPIDI_ACC_OPS_SAME_OP_NO_OP
 };
 
-/* We start with an arbitrarily chosen number (42), to help with
- * debugging when a packet type is not initialized or wrongly
+/* We start with an arbitrarily chosen number (27), to help with
+ * debugging when an epoch state is not initialized or wrongly
  * initialized. */
 enum MPIDI_Win_epoch_states {
-    MPIDI_EPOCH_NONE = 42,
+    MPIDI_EPOCH_NONE = 27,
     MPIDI_EPOCH_FENCE,
     MPIDI_EPOCH_POST,
     MPIDI_EPOCH_START,

http://git.mpich.org/mpich.git/commitdiff/4ab9c23523108401125b2132903c0a41773b5ab3

commit 4ab9c23523108401125b2132903c0a41773b5ab3
Author: Xin Zhao <xinzhao3 at illinois.edu>
Date:   Mon Nov 10 12:22:45 2014 -0600

    Bug-fix: initialize sync_flag to MPIDI_RMA_SYNC_NONE.
    
    MPIDI_RMA_NONE is the initial value of window state
    and should not be used with sync flag. The initial
    value of sync flag should be set to MPIDI_RMA_SYNC_NONE.
    
    Signed-off-by: Rob Latham <robl at mcs.anl.gov>

diff --git a/src/mpid/ch3/include/mpid_rma_oplist.h b/src/mpid/ch3/include/mpid_rma_oplist.h
index 7d5b58c..3dd9176 100644
--- a/src/mpid/ch3/include/mpid_rma_oplist.h
+++ b/src/mpid/ch3/include/mpid_rma_oplist.h
@@ -119,7 +119,7 @@ static inline MPIDI_RMA_Target_t *MPIDI_CH3I_Win_target_alloc(MPID_Win * win_ptr
     e->disable_flush_local = 0;
     e->win_complete_flag = 0;
 
-    e->sync.sync_flag = MPIDI_RMA_NONE;
+    e->sync.sync_flag = MPIDI_RMA_SYNC_NONE;
     e->sync.outstanding_acks = 0;
     e->sync.have_remote_incomplete_ops = 1; /* When I create a new target, there must be
                                                incomplete ops until a FLUSH/UNLOCK packet

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

Summary of changes:
 src/mpid/ch3/include/mpid_rma_oplist.h |    4 +-
 src/mpid/ch3/include/mpid_rma_types.h  |   16 +--
 src/mpid/ch3/include/mpidpre.h         |   36 ++---
 src/mpid/ch3/src/ch3u_rma_acc_ops.c    |  306 --------------------------------
 src/mpid/ch3/src/ch3u_rma_sync.c       |    5 +-
 5 files changed, 19 insertions(+), 348 deletions(-)
 delete mode 100644 src/mpid/ch3/src/ch3u_rma_acc_ops.c


hooks/post-receive
-- 
MPICH primary repository


More information about the commits mailing list