summaryrefslogtreecommitdiffstats
path: root/src/H5Fsuper.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/H5Fsuper.c')
-rw-r--r--src/H5Fsuper.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/H5Fsuper.c b/src/H5Fsuper.c
index 8a81e66..fd8c692 100644
--- a/src/H5Fsuper.c
+++ b/src/H5Fsuper.c
@@ -588,11 +588,15 @@ H5F_super_init(H5F_t *f, hid_t dxpl_id)
/* Check for non-default free space settings */
if(f->shared->fs_strategy != H5F_FILE_SPACE_STRATEGY_DEF ||
f->shared->fs_threshold != H5F_FREE_SPACE_THRESHOLD_DEF) {
- H5O_fsinfo_t fsinfo; /* Free space manager info message */
+ H5FD_mem_t type; /* Memory type for iteration */
+ H5O_fsinfo_t fsinfo; /* Free space manager info message */
/* Write free-space manager info message to superblock extension object header if needed */
fsinfo.strategy = f->shared->fs_strategy;
fsinfo.threshold = f->shared->fs_threshold;
+ for(type = H5FD_MEM_SUPER; type < H5FD_MEM_NTYPES; H5_INC_ENUM(H5FD_mem_t, type))
+ fsinfo.fs_addr[type-1] = HADDR_UNDEF;
+
if(H5O_msg_create(&ext_loc, H5O_FSINFO_ID, H5O_MSG_FLAG_DONTSHARE, H5O_UPDATE_TIME, &fsinfo, dxpl_id) < 0)
HGOTO_ERROR(H5E_FILE, H5E_CANTINIT, FAIL, "unable to update free-space info header message")
} /* end if */
@@ -657,7 +661,7 @@ H5F_super_dirty(H5F_t *f)
HDassert(f->shared->sblock);
/* Mark superblock dirty in cache, so change to EOA will get encoded */
- if(H5AC_mark_pinned_or_protected_entry_dirty(f->shared->sblock) < 0)
+ if(H5AC_mark_entry_dirty(f->shared->sblock) < 0)
HGOTO_ERROR(H5E_FILE, H5E_CANTMARKDIRTY, FAIL, "unable to mark superblock as dirty")
done:
@@ -821,7 +825,7 @@ H5F_super_ext_write_msg(H5F_t *f, hid_t dxpl_id, void *mesg, unsigned id, hbool_
done:
/* Mark superblock dirty in cache, if necessary */
if(sblock_dirty)
- if(H5AC_mark_pinned_or_protected_entry_dirty(f->shared->sblock) < 0)
+ if(H5AC_mark_entry_dirty(f->shared->sblock) < 0)
HDONE_ERROR(H5E_FILE, H5E_CANTMARKDIRTY, FAIL, "unable to mark superblock as dirty")
FUNC_LEAVE_NOAPI(ret_value)