summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/H5MF.c10
-rw-r--r--src/H5MFsection.c9
2 files changed, 17 insertions, 2 deletions
diff --git a/src/H5MF.c b/src/H5MF.c
index d7bbd21..3fc7af0 100644
--- a/src/H5MF.c
+++ b/src/H5MF.c
@@ -167,15 +167,25 @@ H5MF_init_merge_flags(H5F_t *f)
/* Based on mapping type, initialize merging flags for each free list type */
switch(mapping_type) {
case H5MF_AGGR_MERGE_SEPARATE:
+ /* Don't merge any metadata together */
HDmemset(f->shared->fs_aggr_merge, 0, sizeof(f->shared->fs_aggr_merge));
+
+ /* Check if merging raw data should be allowed */
+ if(H5FD_MEM_DRAW == f->shared->fs_type_map[H5FD_MEM_DRAW] ||
+ H5FD_MEM_DEFAULT == f->shared->fs_type_map[H5FD_MEM_DRAW])
+ f->shared->fs_aggr_merge[H5FD_MEM_DRAW] = H5F_FS_MERGE_RAWDATA;
break;
case H5MF_AGGR_MERGE_DICHOTOMY:
+ /* Merge all metadata together (but not raw data) */
HDmemset(f->shared->fs_aggr_merge, H5F_FS_MERGE_METADATA, sizeof(f->shared->fs_aggr_merge));
+
+ /* Allow merging raw data allocations together */
f->shared->fs_aggr_merge[H5FD_MEM_DRAW] = H5F_FS_MERGE_RAWDATA;
break;
case H5MF_AGGR_MERGE_TOGETHER:
+ /* Merge all allocation types together */
HDmemset(f->shared->fs_aggr_merge, (H5F_FS_MERGE_METADATA | H5F_FS_MERGE_RAWDATA), sizeof(f->shared->fs_aggr_merge));
break;
} /* end switch */
diff --git a/src/H5MFsection.c b/src/H5MFsection.c
index 4678dde..200195a 100644
--- a/src/H5MFsection.c
+++ b/src/H5MFsection.c
@@ -477,16 +477,21 @@ H5MF_sect_simple_free(H5FS_section_info_t *_sect)
*/
static herr_t
H5MF_sect_simple_valid(const H5FS_section_class_t UNUSED *cls,
- const H5FS_section_info_t *_sect)
+ const H5FS_section_info_t
+#ifdef NDEBUG
+ UNUSED
+#endif /* NDEBUG */
+ *_sect)
{
+#ifndef NDEBUG
const H5MF_free_section_t *sect = (const H5MF_free_section_t *)_sect; /* File free section */
+#endif /* NDEBUG */
FUNC_ENTER_NOAPI_NOINIT_NOFUNC(H5MF_sect_simple_valid)
/* Check arguments. */
HDassert(sect);
-
FUNC_LEAVE_NOAPI(SUCCEED)
} /* H5MF_sect_simple_valid() */