summaryrefslogtreecommitdiffstats
path: root/src/H5VLnative_file.c
diff options
context:
space:
mode:
authorvchoi <vchoi@jelly.ad.hdfgroup.org>2020-06-24 15:58:22 (GMT)
committervchoi <vchoi@jelly.ad.hdfgroup.org>2020-06-24 15:58:22 (GMT)
commit7d50012a40218f626cd9100a2227b5eb7a761f01 (patch)
tree5da0f0b6c4b5e32ecfd0fb7f0fa2a6d77b55a488 /src/H5VLnative_file.c
parent5449b2af49a450491fd839967ee9549bfb9928cb (diff)
downloadhdf5-7d50012a40218f626cd9100a2227b5eb7a761f01.zip
hdf5-7d50012a40218f626cd9100a2227b5eb7a761f01.tar.gz
hdf5-7d50012a40218f626cd9100a2227b5eb7a761f01.tar.bz2
(1) Add public routines H5Fvfd_swmr_end_tick, H5Fvfd_swmr_disable_end_of_tick, H5Fvfd_swmr_enable_end_of_tick().
(2) Tests for the above APIs.
Diffstat (limited to 'src/H5VLnative_file.c')
-rw-r--r--src/H5VLnative_file.c27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/H5VLnative_file.c b/src/H5VLnative_file.c
index 0229834..563f4a6 100644
--- a/src/H5VLnative_file.c
+++ b/src/H5VLnative_file.c
@@ -828,6 +828,33 @@ H5VL__native_file_optional(void *obj, H5VL_file_optional_t optional_type,
break;
}
+ /* H5Fvfd_swmr_disable_end_of_tick() */
+ case H5VL_NATIVE_FILE_VFD_SWMR_DISABLE_EOT:
+ {
+ /* Call package routine */
+ if(H5F__vfd_swmr_disable_end_of_tick((H5F_t *)obj) < 0)
+ HGOTO_ERROR(H5E_FILE, H5E_CANTINIT, FAIL, "can't disable EOT for VFD SWMR")
+ break;
+ }
+
+ /* H5Fvfd_swmr_enable_end_of_tick() */
+ case H5VL_NATIVE_FILE_VFD_SWMR_ENABLE_EOT:
+ {
+ /* Call package routine */
+ if(H5F__vfd_swmr_enable_end_of_tick((H5F_t *)obj) < 0)
+ HGOTO_ERROR(H5E_FILE, H5E_CANTINIT, FAIL, "can't enable EOT for VFD SWMR")
+ break;
+ }
+
+ /* H5Fvfd_swmr_end_tick() */
+ case H5VL_NATIVE_FILE_VFD_SWMR_END_TICK:
+ {
+ /* Call package routine */
+ if(H5F__vfd_swmr_end_tick((H5F_t *)obj) < 0)
+ HGOTO_ERROR(H5E_FILE, H5E_CANTINIT, FAIL, "can't trigger EOT processing for VFD SWMR")
+ break;
+ }
+
default:
HGOTO_ERROR(H5E_VOL, H5E_UNSUPPORTED, FAIL, "invalid optional operation")
} /* end switch */