1
1

Merge pull request #7102 from edgargabriel/pr/v4.0.x-romio321-status-set-elements-fix

MPIR_Status_set_bytes: fix for large count sizes
Этот коммит содержится в:
Howard Pritchard 2019-11-01 13:08:35 -06:00 коммит произвёл GitHub
родитель dbb873f46f 6185fa1946
Коммит 608502ff85
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23

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

@ -33,7 +33,7 @@
* because ROMIO just expects these functions to exist.
*/
int MPIR_Status_set_bytes(ompi_status_public_t *status,
struct ompi_datatype_t *datatype, int size);
struct ompi_datatype_t *datatype, MPI_Count size);
void ADIOI_Datatype_iscontig(MPI_Datatype datatype, int *flag);
@ -115,7 +115,7 @@ mca_io_base_module_2_0_0_t mca_io_romio321_module = {
* MPI_Status_set_elements (almost like they planned that... hmmm...).
*/
int MPIR_Status_set_bytes(ompi_status_public_t *status,
struct ompi_datatype_t *datatype, int nbytes)
struct ompi_datatype_t *datatype, MPI_Count nbytes)
{
/* Note that ROMIO is going to give a number of *bytes* here, but
MPI_STATUS_SET_ELEMENTS requires a number of *elements*. So
@ -125,7 +125,7 @@ int MPIR_Status_set_bytes(ompi_status_public_t *status,
we do the right calculations there. This prevents roundoff
errors here, potentially "losing" bytes in the process. */
MPI_Status_set_elements(status, MPI_CHAR, nbytes);
MPI_Status_set_elements_x(status, MPI_CHAR, nbytes);
return MPI_SUCCESS;
}