summaryrefslogtreecommitdiffstats
path: root/src/H5C.c
diff options
context:
space:
mode:
authormainzer <mainzer#hdfgroup.org>2018-11-04 23:54:01 (GMT)
committermainzer <mainzer#hdfgroup.org>2018-11-04 23:54:01 (GMT)
commite62f4bd4fab00b0cd03e269a858c21558a9321fa (patch)
tree49506dd4873e1413b6c960ebcaf22c269933411c /src/H5C.c
parentd4d7687ad1df35101ed72567c99f1c57536b5ccd (diff)
downloadhdf5-e62f4bd4fab00b0cd03e269a858c21558a9321fa.zip
hdf5-e62f4bd4fab00b0cd03e269a858c21558a9321fa.tar.gz
hdf5-e62f4bd4fab00b0cd03e269a858c21558a9321fa.tar.bz2
Initial checkin of page buffer re-implementation to support VFD SWMR.
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.
Diffstat (limited to 'src/H5C.c')
-rw-r--r--src/H5C.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/H5C.c b/src/H5C.c
index a22eca0..52c8dfa 100644
--- a/src/H5C.c
+++ b/src/H5C.c
@@ -6412,8 +6412,8 @@ H5C__flush_single_entry(H5F_t *f, H5C_cache_entry_t *entry_ptr, unsigned flags)
HDassert(!destroy);
HDassert(entry_ptr->image_ptr);
- if(f->shared->page_buf && f->shared->page_buf->page_size >= entry_ptr->size)
- if(H5PB_update_entry(f->shared->page_buf, entry_ptr->addr, entry_ptr->size, entry_ptr->image_ptr) > 0)
+ if(f->shared->pb_ptr && f->shared->pb_ptr->page_size >= entry_ptr->size)
+ if(H5PB_update_entry(f->shared->pb_ptr, entry_ptr->addr, entry_ptr->size, entry_ptr->image_ptr) > 0)
HGOTO_ERROR(H5E_CACHE, H5E_SYSTEM, FAIL, "Failed to update PB with metadata cache")
} /* end if */