1
1

As reported by the mpi4py community (Bennet Fauber, Lisandro Dalcin,

Jonathan Dursi), fix a bug in the parameter verification of
MPI_ALLGATHERV: ensure to use the ''remote'' group size when checking
the recvcounts array.

This commit was SVN r26488.
Этот коммит содержится в:
Jeff Squyres 2012-05-24 10:25:21 +00:00
родитель 32337d0d5c
Коммит 42793aa10f

Просмотреть файл

@ -10,6 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2010 University of Houston. All rights reserved.
* Copyright (c) 2012 Cisco Systems, Inc. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -93,7 +94,12 @@ int MPI_Allgatherv(void *sendbuf, int sendcount, MPI_Datatype sendtype,
}
OMPI_ERRHANDLER_CHECK(err, comm, err, FUNC_NAME);
size = ompi_comm_size(comm);
/* We always define the remote group to be the same as the local
group in the case of an intracommunicator, so it's safe to
get the size of the remote group here for both intra- and
intercommunicators */
size = ompi_comm_remote_size(comm);
for (i = 0; i < size; ++i) {
if (recvcounts[i] < 0) {
return OMPI_ERRHANDLER_INVOKE(comm, MPI_ERR_COUNT, FUNC_NAME);