summaryrefslogtreecommitdiffstats
path: root/src/H5Fquery.c
diff options
context:
space:
mode:
authorHoujun Tang <htang4@lbl.gov>2022-07-11 20:59:19 (GMT)
committerGitHub <noreply@github.com>2022-07-11 20:59:19 (GMT)
commit663321087a73e760a028517584731eb8ef308ba2 (patch)
tree06dffb3981cd8de69bc38c1efc047b961d1913a1 /src/H5Fquery.c
parent63ce6839b581c09676e3dc0eaad477870bd2537c (diff)
downloadhdf5-663321087a73e760a028517584731eb8ef308ba2.zip
hdf5-663321087a73e760a028517584731eb8ef308ba2.tar.gz
hdf5-663321087a73e760a028517584731eb8ef308ba2.tar.bz2
Support for UnifyFS with MPI_File_sync (#1801)
* Initial implementation for supporting UnifyFS in HDF5 with MPI_File_sync after write * Committing clang-format changes * Fix format * Fix env variable and return value check * Fix flag retrieve * Fix issues with getting/setting the flag * Fix merge conflicts * Update * Committing clang-format changes * Update based on suggestions * Committing clang-format changes Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Diffstat (limited to 'src/H5Fquery.c')
-rw-r--r--src/H5Fquery.c31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/H5Fquery.c b/src/H5Fquery.c
index a625897..b2b0972 100644
--- a/src/H5Fquery.c
+++ b/src/H5Fquery.c
@@ -1068,6 +1068,37 @@ H5F_coll_md_read(const H5F_t *f)
FUNC_LEAVE_NOAPI(f->shared->coll_md_read)
} /* end H5F_coll_md_read() */
+
+/*-------------------------------------------------------------------------
+ * Function: H5F_shared_get_mpi_file_sync_required
+ *
+ * Purpose: Returns the mpi_file_sync_required flag
+ *
+ * Return: Success: Non-negative
+ * Failure: Negative
+ *
+ * Programmer: Houjun Tang
+ * May 19, 2022
+ *
+ *-------------------------------------------------------------------------
+ */
+herr_t
+H5F_shared_get_mpi_file_sync_required(const H5F_shared_t *f_sh, hbool_t *flag /*out*/)
+{
+ herr_t ret_value = SUCCEED; /* Return value */
+
+ FUNC_ENTER_NOAPI(FAIL)
+
+ HDassert(f_sh);
+ HDassert(flag);
+
+ /* Dispatch to driver */
+ if ((ret_value = H5FD_mpi_get_file_sync_required(f_sh->lf, flag)) < 0)
+ HGOTO_ERROR(H5E_FILE, H5E_CANTGET, FAIL, "driver get_file_sync_required request failed")
+
+done:
+ FUNC_LEAVE_NOAPI(ret_value)
+} /* end H5F_shared_get_mpi_file_sync_required() */
#endif /* H5_HAVE_PARALLEL */
/*-------------------------------------------------------------------------