summaryrefslogtreecommitdiffstats
path: root/src/H5PBprivate.h
Commit message (Collapse)AuthorAgeFilesLines
* Brings the rest of the header changes from developDana Robinson2021-04-061-3/+3
|
* Updates license url and history docsDana Robinson2021-03-251-1/+1
|
* Formats the source and updates the gcc warning pragmasDana Robinson2021-03-251-223/+210
|
* Merge branch 'feature/vfd_swmr' into may-merge-mainzer-to-mineDavid Young2020-07-151-0/+1
|\
| * Log the number of page-buffer accesses at various multiples of the page sizeDavid Young2020-07-151-0/+1
| | | | | | | | with log outlet `pb_access_sizes`.
* | Modified page buffer to split entries only where necessary -- specificallymainzer2020-05-211-1/+22
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | when handling an I/O request on a metadata entry that has been sub-allocated from a larger file space allocation (i.e. fixed and extensible array), and that crosses at least one page boundary. . This required modifying the metadata cache to provide the type of the metadata cache entry in the current I/O request. For now, this is done with a function call. Once we are sure this works, it may be appropriate to convert this to a macro, or to add a flags parameter to the H5F block read/write calls. Also updated the metadata cache to report whether a read request is speculative -- again via a function call. This allowed me to remove the last address static variable in the H5PB_read() call, which is necessary to support multiple files opened in VFD SWMR mode. Also re-wrote the H5PB_remove_entries() call to handle release of large metadata file space allocations that have been sub-allocated into multiple metadata entries. Also modified the call to H5PB_remove_entries() in H5MF__xfree_impl() to invoke it whenever the page buffer is enabled and the size of the space to be freed is of page size or larger. Tested serial / debug on charis and Jelly. Found a bug in H5MF_xfree_impl(), in which the call to H5PB_remove_entries() is skipped due to HGOTO_DONE calls earlier in the function. While the obvious action is to move the call earlier in the function, best to consult with Vailin first, as there is much going on and it would be best to avoid making the situation worse. If nothing else, there are some error management issues.
* Bug fix: in the freespace manager, use a new routine,David Young2020-04-231-0/+1
| | | | | H5PB_remove_entries(), to remove *all* pages overlapped by the freed space, instead of just the first one.
* Make the first argument to H5PB_vfd_swmr__update_index() and H5F_t instead ofDavid Young2020-02-031-1/+1
| | | | | an H5F_shared_t because the new routine that will relocate the index (which will be in a future commit) has to pass an H5F_t to the filespace allocator.
* Make the first parameter of H5PB_remove_entry() non-const to support someDavid Young2019-12-191-1/+1
| | | | changes I will commit shortly.
* Merge all of my changes from merge-back-to-feature-vfd_swmr-attempt-1,David Young2019-12-091-21/+17
| | | | | | | | including the merge of `hdffv/hdf5/develop`, back to the branch that Vailin and I share. Now I need to put this branch on a fork with a less confusing name than vchoi_fork!
* Quiet warnings, especially signed/unsigned casts.dyoung2019-08-221-3/+3
|
* Tidied up comments and removed some stats code that is un-reachable.mainzer2019-07-061-12/+2
|
* interim checkin of VFD SWMR writer EOT code.mainzer2018-12-071-0/+2
| | | | | Added code supporting first cut at the writer end of tick operations. Tested (to the extent possible) on charis and jelly.
* local commit of first cut at vfd swmr writer EOT code.mainzer2018-11-191-4/+137
| | | | | | This is necessary to allow access to Vailin's recent changes This version passes non-swmr tests in a serial / debug build on charis.
* Initial checkin of page buffer re-implementation to support VFD SWMR.mainzer2018-11-041-43/+523
| | | | | | | | | | | | | | | | | | | | | | Tested serial / debug on Charis and Jelly. Two known issues: 1) New page buffer seems to expose issues in the accumulator code. For whatever reason, fheap with the new page buffer exposes corruption issues if the page buffer uses H5F__accum_read/write(), but the problems go away if the page buffers uses H5FD_read/write() instead. Need to either chase this or dis-able page bufffer in combination with the accumulator. 2) Encountered a number of assertion failures that are explainable by the free space manager code not telling the page buffer to discard pages when they are freed. Wrote code to handle this -- once the free space manager is modified, this code should be removed and the original assertions restored.
* Normalization with vol_integration (test code and H5Xtest.c)Dana Robinson2018-09-201-4/+2
|
* Add API context interface and use it throughout the library.Quincey Koziol2018-03-151-6/+6
|
* Merge pull request #426 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:hdf5_1_10 to ↵Larry Knox2017-04-251-6/+4
| | | | | | | | | | hdf5_1_10 * commit '54957d37f5aa73912763dbb6e308555e863c43f4': Commit copyright header change for src/H5PLpkg.c which was added after running script to make changes. Add new files in release_docs to MANIFEST. Cimmit changes to Makefile.in(s) and H5PL.c that resulted from running autogen.sh. Merge pull request #407 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:hdf5_1_10_1 to hdf5_1_10_1 Change copyright headers to replace url referring to file to be removed and replace it with new url for COPYING file.
* Minor code changes to address comments in pull requestmainzer2017-03-171-1/+1
|
* Checkin of additions to cache image parallel test code andmainzer2017-03-161-1/+1
| | | | | | | | | | | | associated bug fixes. Also, modifications to H5PB_dest() to flush the page buffer before destroying the page buffer. This is necessary, as when persistant free space managers are enabled, the page buffer will typically contain dirty FSM data at page buffer destroy time. Tested serial/debug, serial/production, serial/check-vfd/debug, parallel/debug, parallel/production on Jelly.
* Final merge of page buffering branch to developQuincey Koziol2017-03-141-0/+108