summaryrefslogtreecommitdiffstats
path: root/testpar
diff options
context:
space:
mode:
authorMohamad Chaarawi <chaarawi@hdfgroup.org>2014-02-14 13:21:55 (GMT)
committerMohamad Chaarawi <chaarawi@hdfgroup.org>2014-02-14 13:21:55 (GMT)
commitd4c2e51d1e255fde2c0b2e359078cfd0de82720a (patch)
tree237bbb2b1810baf4b30c23d768e98a7f47cc58ae /testpar
parente15ad88d9eb2962dc77848ac156d8b540bbb308d (diff)
parent863ff882b619e8d2c3ad3bdb659f14fa2e9d07d3 (diff)
downloadhdf5-d4c2e51d1e255fde2c0b2e359078cfd0de82720a.zip
hdf5-d4c2e51d1e255fde2c0b2e359078cfd0de82720a.tar.gz
hdf5-d4c2e51d1e255fde2c0b2e359078cfd0de82720a.tar.bz2
[svn-r24710] merge from trunk to 24709.
Diffstat (limited to 'testpar')
-rw-r--r--testpar/t_prop.c45
1 files changed, 20 insertions, 25 deletions
diff --git a/testpar/t_prop.c b/testpar/t_prop.c
index e85b227..f98febb 100644
--- a/testpar/t_prop.c
+++ b/testpar/t_prop.c
@@ -26,58 +26,53 @@ test_encode_decode(hid_t orig_pl, int mpi_rank, int recv_proc)
MPI_Request req[2];
MPI_Status status;
hid_t pl; /* Decoded property list */
- void *send_buf = NULL;
- size_t send_size = 0;
+ void *buf = NULL;
+ size_t buf_size = 0;
+ int casted_size;
herr_t ret; /* Generic return value */
if(mpi_rank == 0) {
-
/* first call to encode returns only the size of the buffer needed */
- ret = H5Pencode(orig_pl, NULL, &send_size);
+ ret = H5Pencode(orig_pl, NULL, &buf_size);
VRFY((ret >= 0), "H5Pencode succeeded");
- send_buf = (uint8_t *)HDmalloc(send_size);
+ buf = (uint8_t *)HDmalloc(buf_size);
- ret = H5Pencode(orig_pl, send_buf, &send_size);
+ ret = H5Pencode(orig_pl, buf, &buf_size);
VRFY((ret >= 0), "H5Pencode succeeded");
- MPI_Isend(&send_size, 1, MPI_INT, recv_proc, 123, MPI_COMM_WORLD, &req[0]);
- MPI_Isend(send_buf, (int)send_size, MPI_BYTE, recv_proc, 124, MPI_COMM_WORLD, &req[1]);
- } /* end if */
+ /* this is a temp fix to send this size_t */
+ casted_size = (int)buf_size;
+ MPI_Isend(&casted_size, 1, MPI_INT, recv_proc, 123, MPI_COMM_WORLD, &req[0]);
+ MPI_Isend(buf, casted_size, MPI_BYTE, recv_proc, 124, MPI_COMM_WORLD, &req[1]);
+ } /* end if */
if(mpi_rank == recv_proc) {
- void *recv_buf = NULL;
- size_t recv_size = 0;
+ MPI_Recv(&casted_size, 1, MPI_INT, 0, 123, MPI_COMM_WORLD, &status);
+ buf_size = casted_size;
+ buf = (uint8_t *)HDmalloc(buf_size);
+ MPI_Recv(buf, casted_size, MPI_BYTE, 0, 124, MPI_COMM_WORLD, &status);
- MPI_Recv(&recv_size, 1, MPI_INT, 0, 123, MPI_COMM_WORLD, &status);
- recv_buf = (uint8_t *)HDmalloc(recv_size);
- MPI_Recv(recv_buf, (int)recv_size, MPI_BYTE, 0, 124, MPI_COMM_WORLD, &status);
-
- pl = H5Pdecode(recv_buf);
+ pl = H5Pdecode(buf);
VRFY((pl >= 0), "H5Pdecode succeeded");
VRFY(H5Pequal(orig_pl, pl), "Property List Equal Succeeded");
ret = H5Pclose(pl);
VRFY((ret >= 0), "H5Pclose succeeded");
-
- if(NULL != recv_buf)
- HDfree(recv_buf);
} /* end if */
- if(mpi_rank == 0) {
+ if(0 == mpi_rank)
MPI_Waitall(2, req, MPI_STATUSES_IGNORE);
- if(NULL != send_buf)
- HDfree(send_buf);
- }
+
+ if(NULL != buf)
+ HDfree(buf);
MPI_Barrier(MPI_COMM_WORLD);
return(0);
}
-
-
void
test_plist_ed(void)
{