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 057bb8be6bc9e1ced3ef42eb7335dbe833b4d188 (commit) via 4e6333e1555e79ac3b07632eabe5918f490ff55a (commit) from 91ca5a73a767eb90c7307e512e8d0449bf324e70 (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/057bb8be6bc9e1ced3ef42eb7335dbe833... commit 057bb8be6bc9e1ced3ef42eb7335dbe833b4d188 Author: Jeff Hammond <[email protected]> Date: Wed May 29 16:17:25 2013 -0500 fix ticket 1863 - improper+missing RMA error checks for addr=NULL MPIR_ERRTEST_ARGNULL is used in MPI_Get_accumulate and MPI_Rget_accumulate to verify that the address of a buffer is not NULL. However, a NULL buffer is valid when the count is zero or when a derived datatype of size 0 is used. Signed-off-by: Jeff Hammond <[email protected]> diff --git a/src/mpi/rma/accumulate.c b/src/mpi/rma/accumulate.c index 8610e92..5ca38d8 100644 --- a/src/mpi/rma/accumulate.c +++ b/src/mpi/rma/accumulate.c @@ -102,6 +102,7 @@ int MPI_Accumulate(const void *origin_addr, int origin_count, MPI_Datatype MPIR_ERRTEST_COUNT(origin_count, mpi_errno); MPIR_ERRTEST_DATATYPE(origin_datatype, "origin_datatype", mpi_errno); + MPIR_ERRTEST_USERBUFFER(origin_addr, origin_count, origin_datatype, mpi_errno); MPIR_ERRTEST_COUNT(target_count, mpi_errno); MPIR_ERRTEST_DATATYPE(target_datatype, "target_datatype", mpi_errno); if (win_ptr->create_flavor != MPI_WIN_FLAVOR_DYNAMIC) diff --git a/src/mpi/rma/get.c b/src/mpi/rma/get.c index 0e0ca28..ae3d568 100644 --- a/src/mpi/rma/get.c +++ b/src/mpi/rma/get.c @@ -98,6 +98,7 @@ int MPI_Get(void *origin_addr, int origin_count, MPI_Datatype MPIR_ERRTEST_COUNT(origin_count, mpi_errno); MPIR_ERRTEST_DATATYPE(origin_datatype, "origin_datatype", mpi_errno); + MPIR_ERRTEST_USERBUFFER(origin_addr, origin_count, origin_datatype, mpi_errno); MPIR_ERRTEST_COUNT(target_count, mpi_errno); MPIR_ERRTEST_DATATYPE(target_datatype, "target_datatype", mpi_errno); if (win_ptr->create_flavor != MPI_WIN_FLAVOR_DYNAMIC) diff --git a/src/mpi/rma/get_accumulate.c b/src/mpi/rma/get_accumulate.c index fa42354..4660212 100644 --- a/src/mpi/rma/get_accumulate.c +++ b/src/mpi/rma/get_accumulate.c @@ -133,11 +133,11 @@ int MPI_Get_accumulate(const void *origin_addr, int origin_count, if (op != MPI_NO_OP) { MPIR_ERRTEST_COUNT(origin_count, mpi_errno); MPIR_ERRTEST_DATATYPE(origin_datatype, "origin_datatype", mpi_errno); - MPIR_ERRTEST_ARGNULL(origin_addr, "origin_addr", mpi_errno); + MPIR_ERRTEST_USERBUFFER(origin_addr, origin_count, origin_datatype, mpi_errno); } MPIR_ERRTEST_COUNT(result_count, mpi_errno); MPIR_ERRTEST_DATATYPE(result_datatype, "result_datatype", mpi_errno); - MPIR_ERRTEST_ARGNULL(result_addr, "result_addr", mpi_errno); + MPIR_ERRTEST_USERBUFFER(result_addr, result_count, result_datatype, mpi_errno); MPIR_ERRTEST_COUNT(target_count, mpi_errno); MPIR_ERRTEST_DATATYPE(target_datatype, "target_datatype", mpi_errno); if (win_ptr->create_flavor != MPI_WIN_FLAVOR_DYNAMIC) diff --git a/src/mpi/rma/put.c b/src/mpi/rma/put.c index 8bb1bd9..9444011 100644 --- a/src/mpi/rma/put.c +++ b/src/mpi/rma/put.c @@ -98,6 +98,7 @@ int MPI_Put(const void *origin_addr, int origin_count, MPI_Datatype MPIR_ERRTEST_COUNT(origin_count, mpi_errno); MPIR_ERRTEST_DATATYPE(origin_datatype, "origin_datatype", mpi_errno); + MPIR_ERRTEST_USERBUFFER(origin_addr, origin_count, origin_datatype, mpi_errno); MPIR_ERRTEST_COUNT(target_count, mpi_errno); MPIR_ERRTEST_DATATYPE(target_datatype, "target_datatype", mpi_errno); if (win_ptr->create_flavor != MPI_WIN_FLAVOR_DYNAMIC) diff --git a/src/mpi/rma/raccumulate.c b/src/mpi/rma/raccumulate.c index ef7168f..4906991 100644 --- a/src/mpi/rma/raccumulate.c +++ b/src/mpi/rma/raccumulate.c @@ -115,6 +115,7 @@ int MPI_Raccumulate(const void *origin_addr, int origin_count, MPI_Datatype MPIR_ERRTEST_COUNT(origin_count, mpi_errno); MPIR_ERRTEST_DATATYPE(origin_datatype, "origin_datatype", mpi_errno); + MPIR_ERRTEST_USERBUFFER(origin_addr, origin_count, origin_datatype, mpi_errno); MPIR_ERRTEST_COUNT(target_count, mpi_errno); MPIR_ERRTEST_DATATYPE(target_datatype, "target_datatype", mpi_errno); if (win_ptr->create_flavor != MPI_WIN_FLAVOR_DYNAMIC) diff --git a/src/mpi/rma/rget.c b/src/mpi/rma/rget.c index 738ec70..33edc79 100644 --- a/src/mpi/rma/rget.c +++ b/src/mpi/rma/rget.c @@ -110,6 +110,7 @@ int MPI_Rget(void *origin_addr, int origin_count, MPI_Datatype MPIR_ERRTEST_COUNT(origin_count, mpi_errno); MPIR_ERRTEST_DATATYPE(origin_datatype, "origin_datatype", mpi_errno); + MPIR_ERRTEST_USERBUFFER(origin_addr, origin_count, origin_datatype, mpi_errno); MPIR_ERRTEST_COUNT(target_count, mpi_errno); MPIR_ERRTEST_DATATYPE(target_datatype, "target_datatype", mpi_errno); if (win_ptr->create_flavor != MPI_WIN_FLAVOR_DYNAMIC) diff --git a/src/mpi/rma/rget_accumulate.c b/src/mpi/rma/rget_accumulate.c index 0b8eb1b..b3a47be 100644 --- a/src/mpi/rma/rget_accumulate.c +++ b/src/mpi/rma/rget_accumulate.c @@ -125,11 +125,11 @@ int MPI_Rget_accumulate(const void *origin_addr, int origin_count, if (op != MPI_NO_OP) { MPIR_ERRTEST_COUNT(origin_count, mpi_errno); MPIR_ERRTEST_DATATYPE(origin_datatype, "origin_datatype", mpi_errno); - MPIR_ERRTEST_ARGNULL(origin_addr, "origin_addr", mpi_errno); + MPIR_ERRTEST_USERBUFFER(origin_addr, origin_count, origin_datatype, mpi_errno); } MPIR_ERRTEST_COUNT(result_count, mpi_errno); MPIR_ERRTEST_DATATYPE(result_datatype, "result_datatype", mpi_errno); - MPIR_ERRTEST_ARGNULL(result_addr, "result_addr", mpi_errno); + MPIR_ERRTEST_USERBUFFER(result_addr, result_count, result_datatype, mpi_errno); MPIR_ERRTEST_COUNT(target_count, mpi_errno); MPIR_ERRTEST_DATATYPE(target_datatype, "target_datatype", mpi_errno); if (win_ptr->create_flavor != MPI_WIN_FLAVOR_DYNAMIC) diff --git a/src/mpi/rma/rput.c b/src/mpi/rma/rput.c index 510ab4e..48c3052 100644 --- a/src/mpi/rma/rput.c +++ b/src/mpi/rma/rput.c @@ -112,6 +112,7 @@ int MPI_Rput(const void *origin_addr, int origin_count, MPI_Datatype MPIR_ERRTEST_COUNT(origin_count, mpi_errno); MPIR_ERRTEST_DATATYPE(origin_datatype, "origin_datatype", mpi_errno); + MPIR_ERRTEST_USERBUFFER(origin_addr, origin_count, origin_datatype, mpi_errno); MPIR_ERRTEST_COUNT(target_count, mpi_errno); MPIR_ERRTEST_DATATYPE(target_datatype, "target_datatype", mpi_errno); if (win_ptr->create_flavor != MPI_WIN_FLAVOR_DYNAMIC) http://git.mpich.org/mpich.git/commitdiff/4e6333e1555e79ac3b07632eabe5918f49... commit 4e6333e1555e79ac3b07632eabe5918f490ff55a Author: Pavan Balaji <[email protected]> Date: Thu Jul 18 20:07:01 2013 -0500 Remove GCC specific pragmas. strict builds no longer do gcc-specific things. We test each option to see if the compiler accepts them before using it. diff --git a/src/mpi/coll/opland.c b/src/mpi/coll/opland.c index a76aa84..8144fc7 100644 --- a/src/mpi/coll/opland.c +++ b/src/mpi/coll/opland.c @@ -11,12 +11,6 @@ #include "mpi_fortlogical.h" #endif -/* We have enabled extensive warnings when using gcc for certain builds. - For this file, this generates many specious warnings */ -#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 2) -#pragma GCC diagnostic ignored "-Wfloat-equal" -#endif - /* * In MPI-2.1, this operation is valid only for C integer and Logical * types (5.9.2 Predefined reduce operations) diff --git a/src/mpi/coll/oplor.c b/src/mpi/coll/oplor.c index d31a95b..51b33be 100644 --- a/src/mpi/coll/oplor.c +++ b/src/mpi/coll/oplor.c @@ -11,12 +11,6 @@ #include "mpi_fortlogical.h" #endif -/* We have enabled extensive warnings when using gcc for certain builds. - For this file, this generates many specious warnings */ -#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 2) -#pragma GCC diagnostic ignored "-Wfloat-equal" -#endif - /* * In MPI-2.1, this operation is valid only for C integer and Logical * types (5.9.2 Predefined reduce operations) diff --git a/src/mpi/coll/oplxor.c b/src/mpi/coll/oplxor.c index cac6d24..89431f9 100644 --- a/src/mpi/coll/oplxor.c +++ b/src/mpi/coll/oplxor.c @@ -11,12 +11,6 @@ #include "mpi_fortlogical.h" #endif -/* We have enabled extensive warnings when using gcc for certain builds. - For this file, this generates many specious warnings */ -#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 2) -#pragma GCC diagnostic ignored "-Wfloat-equal" -#endif - /* * In MPI-2.1, this operation is valid only for C integer and Logical * types (5.9.2 Predefined reduce operations) ----------------------------------------------------------------------- Summary of changes: src/mpi/coll/opland.c | 6 ------ src/mpi/coll/oplor.c | 6 ------ src/mpi/coll/oplxor.c | 6 ------ src/mpi/rma/accumulate.c | 1 + src/mpi/rma/get.c | 1 + src/mpi/rma/get_accumulate.c | 4 ++-- src/mpi/rma/put.c | 1 + src/mpi/rma/raccumulate.c | 1 + src/mpi/rma/rget.c | 1 + src/mpi/rma/rget_accumulate.c | 4 ++-- src/mpi/rma/rput.c | 1 + 11 files changed, 10 insertions(+), 22 deletions(-) hooks/post-receive -- MPICH primary repository