summaryrefslogtreecommitdiffstats
path: root/src/H5Gnode.c
diff options
context:
space:
mode:
authorAlbert Cheng <acheng@hdfgroup.org>2000-03-24 02:12:44 (GMT)
committerAlbert Cheng <acheng@hdfgroup.org>2000-03-24 02:12:44 (GMT)
commite2c95c478aeb1fbf31b06f6bfcea4b750d414df6 (patch)
tree115fa55209fb1c04d0c60682050277bc0cc2aaef /src/H5Gnode.c
parentf5111838893288dc6f52e19e62b417b9d9dd85cf (diff)
downloadhdf5-e2c95c478aeb1fbf31b06f6bfcea4b750d414df6.zip
hdf5-e2c95c478aeb1fbf31b06f6bfcea4b750d414df6.tar.gz
hdf5-e2c95c478aeb1fbf31b06f6bfcea4b750d414df6.tar.bz2
[svn-r2057] Purpose:
Bug fix for parallel mode. Description: H5FD_mpio_tas_allsame was called for all cases, even when MPIO is not used for access. That corrupted the internal file handle structure. Solution: Define a macro, IS_H5FD_MPIO(f), for testing if f is opened with MPIO access. Will call H5FD_mpio_tas_allsame only if this condition is true. Platform tested: O2K, both -64 and -n32 modes.
Diffstat (limited to 'src/H5Gnode.c')
-rw-r--r--src/H5Gnode.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/H5Gnode.c b/src/H5Gnode.c
index 8684a4a..a65f187 100644
--- a/src/H5Gnode.c
+++ b/src/H5Gnode.c
@@ -357,7 +357,8 @@ H5G_node_flush(H5F_t *f, hbool_t destroy, haddr_t addr, H5G_node_t *sym)
HDmemset(p, 0, size - (p - buf));
#ifdef H5_HAVE_PARALLEL
- H5FD_mpio_tas_allsame(f->shared->lf, TRUE); /*only p0 will write*/
+ if (IS_H5FD_MPIO(f))
+ H5FD_mpio_tas_allsame(f->shared->lf, TRUE); /*only p0 will write*/
#endif /* H5_HAVE_PARALLEL */
status = H5F_block_write(f, addr, (hsize_t)size, H5P_DEFAULT, buf);
buf = H5MM_xfree(buf);