diff options
Diffstat (limited to 'test/freespace.c')
-rw-r--r-- | test/freespace.c | 2202 |
1 files changed, 1133 insertions, 1069 deletions
diff --git a/test/freespace.c b/test/freespace.c index 3d33669..8d14f25 100644 --- a/test/freespace.c +++ b/test/freespace.c @@ -6,7 +6,7 @@ * This file is part of HDF5. The full HDF5 copyright notice, including * * terms governing use, modification, and redistribution, is contained in * * the COPYING file, which can be found at the root of the source code * - * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. * + * distribution tree, or in https://www.hdfgroup.org/licenses. * * If you do not have access to either file, you may request a copy from * * help@hdfgroup.org. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ @@ -17,8 +17,7 @@ #define H5FS_PACKAGE #define H5FS_TESTING -#include "H5FSpkg.h" /* Free space manager */ - +#include "H5FSpkg.h" /* Free space manager */ /* Other private headers that this test requires */ #define H5F_PACKAGE @@ -26,64 +25,61 @@ #include "H5Iprivate.h" #include "H5VMprivate.h" -#define FILENAME_LEN 1024 - -#define TEST_FSPACE_SECT_TYPE 0 -#define TEST_FSPACE_SECT_TYPE_NEW 1 -#define TEST_FSPACE_SECT_TYPE_NONE 2 - -#define TEST_FSPACE_SHRINK 80 -#define TEST_FSPACE_EXPAND 120 -#define TEST_MAX_SECT_SIZE (64 * 1024) -#define TEST_MAX_INDEX 32 - -#define TEST_SECT_ADDR60 60 -#define TEST_SECT_ADDR70 70 -#define TEST_SECT_ADDR80 80 -#define TEST_SECT_ADDR100 100 -#define TEST_SECT_ADDR150 150 -#define TEST_SECT_ADDR200 200 -#define TEST_SECT_ADDR300 300 - -#define TEST_SECT_SIZE5 5 -#define TEST_SECT_SIZE10 10 -#define TEST_SECT_SIZE15 15 -#define TEST_SECT_SIZE20 20 -#define TEST_SECT_SIZE30 30 -#define TEST_SECT_SIZE40 40 -#define TEST_SECT_SIZE50 50 -#define TEST_SECT_SIZE80 80 - -#define FSPACE_THRHD_DEF 1 /* Default: no alignment threshold */ -#define FSPACE_ALIGN_DEF 1 /* Default: no alignment */ - -const char *FILENAME[] = { - "frspace", - NULL -}; +#define FILENAME_LEN 1024 + +#define TEST_FSPACE_SECT_TYPE 0 +#define TEST_FSPACE_SECT_TYPE_NEW 1 +#define TEST_FSPACE_SECT_TYPE_NONE 2 + +#define TEST_FSPACE_SHRINK 80 +#define TEST_FSPACE_EXPAND 120 +#define TEST_MAX_SECT_SIZE (64 * 1024) +#define TEST_MAX_INDEX 32 + +#define TEST_SECT_ADDR60 60 +#define TEST_SECT_ADDR70 70 +#define TEST_SECT_ADDR80 80 +#define TEST_SECT_ADDR100 100 +#define TEST_SECT_ADDR150 150 +#define TEST_SECT_ADDR200 200 +#define TEST_SECT_ADDR300 300 + +#define TEST_SECT_SIZE5 5 +#define TEST_SECT_SIZE10 10 +#define TEST_SECT_SIZE15 15 +#define TEST_SECT_SIZE20 20 +#define TEST_SECT_SIZE30 30 +#define TEST_SECT_SIZE40 40 +#define TEST_SECT_SIZE50 50 +#define TEST_SECT_SIZE80 80 + +#define FSPACE_THRHD_DEF 1 /* Default: no alignment threshold */ +#define FSPACE_ALIGN_DEF 1 /* Default: no alignment */ + +const char *FILENAME[] = {"frspace", NULL}; typedef struct frspace_state_t { - hsize_t tot_space; /* Total amount of space tracked */ - hsize_t tot_sect_count; /* Total # of sections tracked */ - hsize_t serial_sect_count; /* # of serializable sections tracked */ - hsize_t ghost_sect_count; /* # of un-serializable sections tracked */ + hsize_t tot_space; /* Total amount of space tracked */ + hsize_t tot_sect_count; /* Total # of sections tracked */ + hsize_t serial_sect_count; /* # of serializable sections tracked */ + hsize_t ghost_sect_count; /* # of un-serializable sections tracked */ } frspace_state_t; -haddr_t g_eoa=0; -static haddr_t TEST_get_eoa(void); -static void TEST_set_eoa(haddr_t); +haddr_t g_eoa = 0; +static haddr_t TEST_get_eoa(void); +static void TEST_set_eoa(haddr_t); /* * TEST client */ typedef struct TEST_free_section_t { - H5FS_section_info_t sect_info; /* Free space section information (must be first in struct) */ + H5FS_section_info_t sect_info; /* Free space section information (must be first in struct) */ } TEST_free_section_t; - static herr_t TEST_sect_init_cls(H5FS_section_class_t *, void *); static herr_t TEST_sect_free(H5FS_section_info_t *_sect); -static herr_t TEST_sect_can_merge(const H5FS_section_info_t *, const H5FS_section_info_t *, void H5_ATTR_UNUSED *); +static herr_t TEST_sect_can_merge(const H5FS_section_info_t *, const H5FS_section_info_t *, + void H5_ATTR_UNUSED *); static herr_t TEST_sect_merging(H5FS_section_info_t *, H5FS_section_info_t *, void H5_ATTR_UNUSED *); static herr_t TEST_sect_can_shrink(const H5FS_section_info_t *, void *); static herr_t TEST_sect_shrinking(H5FS_section_info_t **, void *); @@ -97,101 +93,95 @@ static unsigned test_fs_sect_change_class(hid_t fapl); static unsigned test_fs_sect_extend(hid_t fapl); static unsigned test_fs_sect_iterate(hid_t fapl); - H5FS_section_class_t TEST_FSPACE_SECT_CLS[1] = {{ - TEST_FSPACE_SECT_TYPE, /* Section type */ - 0, /* Extra serialized size */ - H5FS_CLS_MERGE_SYM | H5FS_CLS_ADJUST_OK, /* Class flags */ - NULL, /* Class private info */ + TEST_FSPACE_SECT_TYPE, /* Section type */ + 0, /* Extra serialized size */ + H5FS_CLS_MERGE_SYM | H5FS_CLS_ADJUST_OK, /* Class flags */ + NULL, /* Class private info */ /* Class methods */ - TEST_sect_init_cls, /* Initialize section class */ - NULL, /* Terminate section class */ + TEST_sect_init_cls, /* Initialize section class */ + NULL, /* Terminate section class */ /* Object methods */ - NULL, /* Add section */ - NULL, /* Serialize section */ - NULL, /* Deserialize section */ - TEST_sect_can_merge, /* Can sections merge? */ - TEST_sect_merging, /* Merge sections */ - TEST_sect_can_shrink, /* Can section shrink container?*/ - TEST_sect_shrinking, /* Shrink container w/section */ - TEST_sect_free, /* Free section */ - NULL, /* Check validity of section */ - NULL, /* Split section node for alignment */ - NULL, /* Dump debugging for section */ + NULL, /* Add section */ + NULL, /* Serialize section */ + NULL, /* Deserialize section */ + TEST_sect_can_merge, /* Can sections merge? */ + TEST_sect_merging, /* Merge sections */ + TEST_sect_can_shrink, /* Can section shrink container?*/ + TEST_sect_shrinking, /* Shrink container w/section */ + TEST_sect_free, /* Free section */ + NULL, /* Check validity of section */ + NULL, /* Split section node for alignment */ + NULL, /* Dump debugging for section */ }}; H5FS_section_class_t TEST_FSPACE_SECT_CLS_NEW[1] = {{ - TEST_FSPACE_SECT_TYPE_NEW, /* Section type */ - 0, /* Extra serialized size */ - H5FS_CLS_MERGE_SYM | H5FS_CLS_ADJUST_OK, /* Class flags */ - NULL, /* Class private info */ + TEST_FSPACE_SECT_TYPE_NEW, /* Section type */ + 0, /* Extra serialized size */ + H5FS_CLS_MERGE_SYM | H5FS_CLS_ADJUST_OK, /* Class flags */ + NULL, /* Class private info */ /* Class methods */ - TEST_sect_init_cls, /* Initialize section class */ - NULL, /* Terminate section class */ + TEST_sect_init_cls, /* Initialize section class */ + NULL, /* Terminate section class */ /* Object methods */ - NULL, /* Add section */ - NULL, /* Serialize section */ - NULL, /* Deserialize section */ - TEST_sect_can_merge, /* Can sections merge? */ - TEST_sect_merging, /* Merge sections */ - NULL, /* Can section shrink container?*/ - NULL, /* Shrink container w/section */ - TEST_sect_free, /* Free section */ - NULL, /* Check validity of section */ - NULL, /* Split section node for alignment */ - NULL, /* Dump debugging for section */ + NULL, /* Add section */ + NULL, /* Serialize section */ + NULL, /* Deserialize section */ + TEST_sect_can_merge, /* Can sections merge? */ + TEST_sect_merging, /* Merge sections */ + NULL, /* Can section shrink container?*/ + NULL, /* Shrink container w/section */ + TEST_sect_free, /* Free section */ + NULL, /* Check validity of section */ + NULL, /* Split section node for alignment */ + NULL, /* Dump debugging for section */ }}; H5FS_section_class_t TEST_FSPACE_SECT_CLS_NOINIT[1] = {{ - TEST_FSPACE_SECT_TYPE_NONE, /* Section type */ - 0, /* Extra serialized size */ - H5FS_CLS_MERGE_SYM | H5FS_CLS_ADJUST_OK, /* Class flags */ - NULL, /* Class private info */ + TEST_FSPACE_SECT_TYPE_NONE, /* Section type */ + 0, /* Extra serialized size */ + H5FS_CLS_MERGE_SYM | H5FS_CLS_ADJUST_OK, /* Class flags */ + NULL, /* Class private info */ /* Class methods */ - NULL, /* Initialize section class */ - NULL, /* Terminate section class */ + NULL, /* Initialize section class */ + NULL, /* Terminate section class */ /* Object methods */ - NULL, /* Add section */ - NULL, /* Serialize section */ - NULL, /* Deserialize section */ - TEST_sect_can_merge, /* Can sections merge? */ - TEST_sect_merging, /* Merge sections */ - NULL, /* Can section shrink container?*/ - NULL, /* Shrink container w/section */ - TEST_sect_free, /* Free section */ - NULL, /* Check validity of section */ - NULL, /* Split section node for alignment */ - NULL, /* Dump debugging for section */ + NULL, /* Add section */ + NULL, /* Serialize section */ + NULL, /* Deserialize section */ + TEST_sect_can_merge, /* Can sections merge? */ + TEST_sect_merging, /* Merge sections */ + NULL, /* Can section shrink container?*/ + NULL, /* Shrink container w/section */ + TEST_sect_free, /* Free section */ + NULL, /* Check validity of section */ + NULL, /* Split section node for alignment */ + NULL, /* Dump debugging for section */ }}; -const H5FS_section_class_t *test_classes[] = { - TEST_FSPACE_SECT_CLS, - TEST_FSPACE_SECT_CLS_NEW, - TEST_FSPACE_SECT_CLS_NOINIT -}; - +const H5FS_section_class_t *test_classes[] = {TEST_FSPACE_SECT_CLS, TEST_FSPACE_SECT_CLS_NEW, + TEST_FSPACE_SECT_CLS_NOINIT}; static void init_cparam(H5FS_create_t *); static void init_sect_node(TEST_free_section_t *, haddr_t, hsize_t, unsigned, H5FS_section_state_t); -static int check_stats(const H5F_t *, const H5FS_t *, frspace_state_t *); +static int check_stats(const H5F_t *, const H5FS_t *, frspace_state_t *); -#define NUM_SECTIONS 1000 +#define NUM_SECTIONS 1000 /* User data for free space section iterator callback */ typedef struct { - hsize_t tot_size; - hsize_t tot_sect_count; + hsize_t tot_size; + hsize_t tot_sect_count; } TEST_iter_ud_t; static herr_t TEST_sects_cb(H5FS_section_info_t *_sect, void *_udata); - /* * Tests */ @@ -202,8 +192,8 @@ static herr_t TEST_sects_cb(H5FS_section_info_t *_sect, void *_udata); static herr_t TEST_sect_init_cls(H5FS_section_class_t *cls, void *_udata) { - herr_t ret_value = SUCCEED; /* Return value */ - unsigned *init_flags; + herr_t ret_value = SUCCEED; /* Return value */ + unsigned *init_flags; /* Check arguments. */ HDassert(cls); @@ -212,7 +202,7 @@ TEST_sect_init_cls(H5FS_section_class_t *cls, void *_udata) init_flags = (unsigned *)_udata; cls->flags |= *init_flags; - return(ret_value); + return ret_value; } /* TEST_sect_init_cls() */ /* @@ -220,55 +210,54 @@ TEST_sect_init_cls(H5FS_section_class_t *cls, void *_udata) * true if second section adjoins the first section */ static herr_t -TEST_sect_can_merge(const H5FS_section_info_t *_sect1, - const H5FS_section_info_t *_sect2, void H5_ATTR_UNUSED *_udata) +TEST_sect_can_merge(const H5FS_section_info_t *_sect1, const H5FS_section_info_t *_sect2, + void H5_ATTR_UNUSED *_udata) { const TEST_free_section_t *sect1 = (const TEST_free_section_t *)_sect1; const TEST_free_section_t *sect2 = (const TEST_free_section_t *)_sect2; - htri_t ret_value; /* Return value */ + htri_t ret_value; /* Return value */ /* Check arguments. */ HDassert(sect1); HDassert(sect2); - HDassert(sect1->sect_info.type == sect2->sect_info.type); /* Checks "MERGE_SYM" flag */ + HDassert(sect1->sect_info.type == sect2->sect_info.type); /* Checks "MERGE_SYM" flag */ HDassert(H5F_addr_lt(sect1->sect_info.addr, sect2->sect_info.addr)); /* Check if second section adjoins first section */ ret_value = H5F_addr_eq(sect1->sect_info.addr + sect1->sect_info.size, sect2->sect_info.addr); - return(ret_value); + return ret_value; } /* TEST_sect_can_merge() */ /* * Merge the two sections (second section is merged into the first section) */ static herr_t -TEST_sect_merging(H5FS_section_info_t *_sect1, H5FS_section_info_t *_sect2, - void H5_ATTR_UNUSED *_udata) +TEST_sect_merging(H5FS_section_info_t *_sect1, H5FS_section_info_t *_sect2, void H5_ATTR_UNUSED *_udata) { - TEST_free_section_t *sect1 = (TEST_free_section_t *)_sect1; - TEST_free_section_t *sect2 = (TEST_free_section_t *)_sect2; - herr_t ret_value = SUCCEED; /* Return value */ + TEST_free_section_t *sect1 = (TEST_free_section_t *)_sect1; + TEST_free_section_t *sect2 = (TEST_free_section_t *)_sect2; + herr_t ret_value = SUCCEED; /* Return value */ /* Check arguments. */ HDassert(sect1); HDassert((sect1->sect_info.type == TEST_FSPACE_SECT_TYPE) || - (sect1->sect_info.type == TEST_FSPACE_SECT_TYPE_NEW) || - (sect1->sect_info.type == TEST_FSPACE_SECT_TYPE_NONE)); + (sect1->sect_info.type == TEST_FSPACE_SECT_TYPE_NEW) || + (sect1->sect_info.type == TEST_FSPACE_SECT_TYPE_NONE)); HDassert(sect2); HDassert((sect2->sect_info.type == TEST_FSPACE_SECT_TYPE) || - (sect2->sect_info.type == TEST_FSPACE_SECT_TYPE_NEW) || - (sect2->sect_info.type == TEST_FSPACE_SECT_TYPE_NONE)); + (sect2->sect_info.type == TEST_FSPACE_SECT_TYPE_NEW) || + (sect2->sect_info.type == TEST_FSPACE_SECT_TYPE_NONE)); HDassert(H5F_addr_eq(sect1->sect_info.addr + sect1->sect_info.size, sect2->sect_info.addr)); /* Add second section's size to first section */ sect1->sect_info.size += sect2->sect_info.size; /* Get rid of second section */ - if(TEST_sect_free((H5FS_section_info_t *)sect2) < 0) - TEST_ERROR + if (TEST_sect_free((H5FS_section_info_t *)sect2) < 0) + TEST_ERROR error: - return(ret_value); + return ret_value; } /* TEST_sect_merging() */ /* @@ -280,7 +269,7 @@ TEST_sect_free(H5FS_section_info_t *sect) /* Release the section */ HDfree(sect); - return(0); + return 0; } /* TEST_sect_free() */ /* @@ -293,22 +282,22 @@ TEST_sect_free(H5FS_section_info_t *sect) static herr_t TEST_sect_can_shrink(const H5FS_section_info_t *_sect, void *_udata) { - unsigned *can_shrink = (unsigned *)_udata; - const TEST_free_section_t *sect = (const TEST_free_section_t *)_sect; - haddr_t end, eoa; + unsigned * can_shrink = (unsigned *)_udata; + const TEST_free_section_t *sect = (const TEST_free_section_t *)_sect; + haddr_t end, eoa; if (can_shrink == NULL) - return(FALSE); + return FALSE; end = sect->sect_info.addr + sect->sect_info.size; eoa = TEST_get_eoa(); if (end == eoa) - *can_shrink = TRUE; + *can_shrink = TRUE; else - *can_shrink = FALSE; + *can_shrink = FALSE; - return((htri_t)*can_shrink); + return (htri_t)*can_shrink; } /* TEST_sect_can_shrink() */ /* @@ -317,32 +306,31 @@ TEST_sect_can_shrink(const H5FS_section_info_t *_sect, void *_udata) static herr_t TEST_sect_shrinking(H5FS_section_info_t **_sect, void *_udata) { - TEST_free_section_t **sect = (TEST_free_section_t **)_sect; - unsigned *can_shrink = (unsigned *)_udata; + TEST_free_section_t **sect = (TEST_free_section_t **)_sect; + unsigned * can_shrink = (unsigned *)_udata; /* address of the section is faked, so, doesn't need to do anything */ /* just free the section node */ if (*can_shrink) { - if (TEST_sect_free((H5FS_section_info_t *)*sect) < 0) - TEST_ERROR - *sect = NULL; - return(TRUE); - } + if (TEST_sect_free((H5FS_section_info_t *)*sect) < 0) + TEST_ERROR + *sect = NULL; + return TRUE; + } /* end if */ error: - return(FALSE); + return FALSE; } - /* * iteration callback */ static herr_t TEST_sects_cb(H5FS_section_info_t *_sect, void *_udata) { - TEST_free_section_t *sect = (TEST_free_section_t *)_sect; - TEST_iter_ud_t *udata = (TEST_iter_ud_t *)_udata; - herr_t ret_value = SUCCEED; /* Return value */ + TEST_free_section_t *sect = (TEST_free_section_t *)_sect; + TEST_iter_ud_t * udata = (TEST_iter_ud_t *)_udata; + herr_t ret_value = SUCCEED; /* Return value */ HDassert(sect); HDassert(udata); @@ -350,21 +338,21 @@ TEST_sects_cb(H5FS_section_info_t *_sect, void *_udata) udata->tot_size += sect->sect_info.size; udata->tot_sect_count += 1; - return(ret_value); + return (ret_value); } /* supporting routine for shrinking */ static haddr_t TEST_get_eoa(void) { - return(g_eoa); + return g_eoa; } /* supporting routine for shrinking */ static void TEST_set_eoa(haddr_t val) { - g_eoa = val; + g_eoa = val; } /* @@ -378,8 +366,8 @@ init_cparam(H5FS_create_t *cparam) /* Set the free space creation parameters */ cparam->shrink_percent = TEST_FSPACE_SHRINK; cparam->expand_percent = TEST_FSPACE_EXPAND; - cparam->max_sect_size = TEST_MAX_SECT_SIZE; - cparam->max_sect_addr = TEST_MAX_INDEX; + cparam->max_sect_size = TEST_MAX_SECT_SIZE; + cparam->max_sect_addr = TEST_MAX_INDEX; } /* init_cparam() */ @@ -387,11 +375,12 @@ init_cparam(H5FS_create_t *cparam) * Initialize free space section node */ static void -init_sect_node(TEST_free_section_t *sect_node, haddr_t addr, hsize_t size, unsigned type, H5FS_section_state_t state) +init_sect_node(TEST_free_section_t *sect_node, haddr_t addr, hsize_t size, unsigned type, + H5FS_section_state_t state) { - sect_node->sect_info.addr = addr; - sect_node->sect_info.size = size; - sect_node->sect_info.type = type; + sect_node->sect_info.addr = addr; + sect_node->sect_info.size = size; + sect_node->sect_info.type = type; sect_node->sect_info.state = state; } /* init_sect_node() */ @@ -401,38 +390,38 @@ init_sect_node(TEST_free_section_t *sect_node, haddr_t addr, hsize_t size, unsig static int check_stats(const H5F_t *f, const H5FS_t *frsp, frspace_state_t *state) { - H5FS_stat_t frspace_stats; /* Statistics about the heap */ + H5FS_stat_t frspace_stats; /* Statistics about the heap */ /* Get statistics for heap and verify they are correct */ - if(H5FS_stat_info(f, frsp, &frspace_stats) < 0) + if (H5FS_stat_info(f, frsp, &frspace_stats) < 0) FAIL_STACK_ERROR - if(frspace_stats.tot_space != state->tot_space) { - HDfprintf(stdout, "frspace_stats.tot_space = %Hu, state->tot_space = %Zu\n", - frspace_stats.tot_space, state->tot_space); + if (frspace_stats.tot_space != state->tot_space) { + HDfprintf(stdout, "frspace_stats.tot_space = %Hu, state->tot_space = %Zu\n", frspace_stats.tot_space, + state->tot_space); TEST_ERROR } /* end if */ - if(frspace_stats.tot_sect_count != state->tot_sect_count) { + if (frspace_stats.tot_sect_count != state->tot_sect_count) { HDfprintf(stdout, "frspace_stats.tot_sect_count = %Hu, state->tot_sect_count = %Hu\n", - frspace_stats.tot_sect_count, state->tot_sect_count); + frspace_stats.tot_sect_count, state->tot_sect_count); TEST_ERROR } /* end if */ - if(frspace_stats.serial_sect_count != state->serial_sect_count) { + if (frspace_stats.serial_sect_count != state->serial_sect_count) { HDfprintf(stdout, "frspace_stats.serial_sect_count = %Hu, state->serial_sect_count = %Hu\n", - frspace_stats.serial_sect_count, state->serial_sect_count); + frspace_stats.serial_sect_count, state->serial_sect_count); TEST_ERROR } /* end if */ - if(frspace_stats.ghost_sect_count != state->ghost_sect_count) { + if (frspace_stats.ghost_sect_count != state->ghost_sect_count) { HDfprintf(stdout, "frspace_stats.ghost_sect_count = %Hu, state->ghost_sect_count = %Hu\n", - frspace_stats.ghost_sect_count, state->ghost_sect_count); + frspace_stats.ghost_sect_count, state->ghost_sect_count); TEST_ERROR } /* end if */ /* All tests passed */ - return(0); + return 0; error: - return(1); + return 1; } /* check_stats() */ /* @@ -445,16 +434,16 @@ error: static unsigned test_fs_create(hid_t fapl) { - hid_t file = -1; /* File ID */ - char filename[FILENAME_LEN]; /* Filename to use */ - H5F_t *f = NULL; /* Internal file object pointer */ - H5FS_t *frsp = NULL; /* pointer to free space structure */ - haddr_t fs_addr; /* address of free space */ - h5_stat_size_t file_size, empty_size; /* File size */ - frspace_state_t state; /* State of free space*/ - H5FS_create_t cparam, test_cparam; /* creation parameters */ - size_t nclasses; - unsigned init_flags=0; + hid_t file = -1; /* File ID */ + char filename[FILENAME_LEN]; /* Filename to use */ + H5F_t * f = NULL; /* Internal file object pointer */ + H5FS_t * frsp = NULL; /* pointer to free space structure */ + haddr_t fs_addr; /* address of free space */ + h5_stat_size_t file_size, empty_size; /* File size */ + frspace_state_t state; /* State of free space*/ + H5FS_create_t cparam, test_cparam; /* creation parameters */ + size_t nclasses; + unsigned init_flags = 0; TESTING("the creation/close/reopen/deletion of the free-space manager"); @@ -462,99 +451,100 @@ test_fs_create(hid_t fapl) h5_fixname(FILENAME[0], fapl, filename, sizeof(filename)); /* Create the file to work on */ - if((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) + if ((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) FAIL_STACK_ERROR /* Close file */ - if(H5Fclose(file) < 0) + if (H5Fclose(file) < 0) FAIL_STACK_ERROR /* Get the size of a file w/empty heap*/ - if((empty_size = h5_get_file_size(filename, fapl)) < 0) + if ((empty_size = h5_get_file_size(filename, fapl)) < 0) TEST_ERROR /* Re-open the file */ - if((file = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) + if ((file = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) FAIL_STACK_ERROR /* Get a pointer to the internal file object */ - if(NULL == (f = (H5F_t *)H5I_object(file))) + if (NULL == (f = (H5F_t *)H5I_object(file))) FAIL_STACK_ERROR /* initialize creation parameters for free-space manager */ init_cparam(&cparam); nclasses = NELMTS(test_classes); - if(NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, - &cparam, nclasses, test_classes, &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) - FAIL_STACK_ERROR + if (NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, &cparam, nclasses, test_classes, + &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) + FAIL_STACK_ERROR - if(!H5F_addr_defined(fs_addr)) + if (!H5F_addr_defined(fs_addr)) TEST_ERROR if (frsp->nclasses != nclasses) - TEST_ERROR + TEST_ERROR HDmemset(&state, 0, sizeof(frspace_state_t)); - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR HDmemset(&test_cparam, 0, sizeof(H5FS_create_t)); - if(H5FS_get_cparam_test(frsp, &test_cparam) < 0) + if (H5FS_get_cparam_test(frsp, &test_cparam) < 0) FAIL_STACK_ERROR if (H5FS_cmp_cparam_test(&cparam, &test_cparam)) FAIL_STACK_ERROR /* Close the free space manager */ - if(H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) + if (H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) FAIL_STACK_ERROR frsp = NULL; /* reopen the free-space manager */ - if(NULL == (frsp = H5FS_open(f, H5P_DATASET_XFER_DEFAULT, fs_addr, - nclasses, test_classes, NULL, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) - FAIL_STACK_ERROR + if (NULL == (frsp = H5FS_open(f, H5P_DATASET_XFER_DEFAULT, fs_addr, nclasses, test_classes, NULL, + (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) + FAIL_STACK_ERROR - if(!H5F_addr_defined(fs_addr)) + if (!H5F_addr_defined(fs_addr)) TEST_ERROR if (frsp->nclasses != nclasses) - TEST_ERROR + TEST_ERROR /* Close the free space manager */ - if(H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) + if (H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) FAIL_STACK_ERROR frsp = NULL; /* Delete free space manager */ - if(H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) + if (H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) FAIL_STACK_ERROR fs_addr = HADDR_UNDEF; /* Close the file */ - if(H5Fclose(file) < 0) + if (H5Fclose(file) < 0) FAIL_STACK_ERROR /* Get the size of the file */ - if((file_size = h5_get_file_size(filename, fapl)) < 0) + if ((file_size = h5_get_file_size(filename, fapl)) < 0) TEST_ERROR /* Verify the file is the correct size */ - if(file_size != empty_size) + if (file_size != empty_size) TEST_ERROR PASSED() - return(0); + return 0; error: - H5E_BEGIN_TRY { - if(frsp) - H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp); - H5Fclose(file); - } H5E_END_TRY; - return(1); + H5E_BEGIN_TRY + { + if (frsp) + H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp); + H5Fclose(file); + } + H5E_END_TRY; + return 1; } /* test_fs_create() */ - /* * Test 1: * Create free-space manager @@ -582,61 +572,62 @@ error: static unsigned test_fs_sect_add(hid_t fapl) { - hid_t file = -1; /* File ID */ - char filename[FILENAME_LEN]; /* Filename to use */ - H5F_t *f = NULL; /* Internal file object pointer */ - H5FS_t *frsp = NULL; /* pointer to free space structure */ - haddr_t fs_addr=HADDR_UNDEF; /* address of free space */ - size_t nclasses; - H5FS_create_t cparam; /* creation parameters */ - frspace_state_t state; /* State of free space*/ - - TEST_free_section_t *sect_node = NULL; - unsigned init_flags=0; - h5_stat_size_t file_size=0, tmp_file_size=0, fr_meta_size=0; - unsigned can_shrink=FALSE; + hid_t file = -1; /* File ID */ + char filename[FILENAME_LEN]; /* Filename to use */ + H5F_t * f = NULL; /* Internal file object pointer */ + H5FS_t * frsp = NULL; /* pointer to free space structure */ + haddr_t fs_addr = HADDR_UNDEF; /* address of free space */ + size_t nclasses; + H5FS_create_t cparam; /* creation parameters */ + frspace_state_t state; /* State of free space*/ + + TEST_free_section_t *sect_node = NULL; + unsigned init_flags = 0; + h5_stat_size_t file_size = 0, tmp_file_size = 0, fr_meta_size = 0; + unsigned can_shrink = FALSE; TESTING("adding a section via H5FS_sect_add() to free-space: test 1"); h5_fixname(FILENAME[0], fapl, filename, sizeof(filename)); /* Create the file to work on */ - if((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) + if ((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) FAIL_STACK_ERROR /* Close file */ - if(H5Fclose(file) < 0) + if (H5Fclose(file) < 0) FAIL_STACK_ERROR /* Get the size of a file w/empty heap*/ - if((file_size = h5_get_file_size(filename, fapl)) < 0) + if ((file_size = h5_get_file_size(filename, fapl)) < 0) TEST_ERROR /* Re-open the file */ - if((file = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) + if ((file = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) FAIL_STACK_ERROR /* Get a pointer to the internal file object */ - if(NULL == (f = (H5F_t *)H5I_object(file))) + if (NULL == (f = (H5F_t *)H5I_object(file))) FAIL_STACK_ERROR init_cparam(&cparam); nclasses = NELMTS(test_classes); - if(NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, - &cparam, nclasses, test_classes, &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) + if (NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, &cparam, nclasses, test_classes, + &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) FAIL_STACK_ERROR - if(!H5F_addr_defined(fs_addr)) + if (!H5F_addr_defined(fs_addr)) TEST_ERROR - if(NULL == (sect_node = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + if (NULL == (sect_node = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) FAIL_STACK_ERROR - init_sect_node(sect_node, (haddr_t)TEST_SECT_ADDR80, (hsize_t)TEST_SECT_SIZE20, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node, (haddr_t)TEST_SECT_ADDR80, (hsize_t)TEST_SECT_SIZE20, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) FAIL_STACK_ERROR HDmemset(&state, 0, sizeof(frspace_state_t)); @@ -644,25 +635,25 @@ test_fs_sect_add(hid_t fapl) state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR fr_meta_size = H5FS_HEADER_SIZE(f) + H5FS_SINFO_PREFIX_SIZE(f); /* Close the free space manager */ - if(H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) + if (H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) FAIL_STACK_ERROR frsp = NULL; /* Close the file */ - if(H5Fclose(file) < 0) + if (H5Fclose(file) < 0) FAIL_STACK_ERROR /* Get the size of a file w/empty heap*/ - if((tmp_file_size = h5_get_file_size(filename, fapl)) < 0) + if ((tmp_file_size = h5_get_file_size(filename, fapl)) < 0) TEST_ERROR - if (tmp_file_size <= (file_size+fr_meta_size)) + if (tmp_file_size <= (file_size + fr_meta_size)) TEST_ERROR PASSED() @@ -670,36 +661,36 @@ test_fs_sect_add(hid_t fapl) TESTING("adding a section via H5FS_sect_add() to free-space with H5FS_CLS_GHOST_OBJ: test 2"); /* Get the size of a file w/empty heap*/ - if((file_size = h5_get_file_size(filename, fapl)) < 0) + if ((file_size = h5_get_file_size(filename, fapl)) < 0) TEST_ERROR /* Re-open the file */ - if((file = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) + if ((file = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) FAIL_STACK_ERROR /* Get a pointer to the internal file object */ - if(NULL == (f = (H5F_t *)H5I_object(file))) + if (NULL == (f = (H5F_t *)H5I_object(file))) FAIL_STACK_ERROR init_cparam(&cparam); nclasses = NELMTS(test_classes); init_flags = H5FS_CLS_GHOST_OBJ; - if(NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, - &cparam, nclasses, test_classes, &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) + if (NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, &cparam, nclasses, test_classes, + &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) FAIL_STACK_ERROR - if(!H5F_addr_defined(fs_addr)) + if (!H5F_addr_defined(fs_addr)) TEST_ERROR /* Create free list section node */ - if(NULL == (sect_node = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + if (NULL == (sect_node = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) FAIL_STACK_ERROR - init_sect_node(sect_node, (haddr_t)TEST_SECT_ADDR80, (hsize_t)TEST_SECT_SIZE20, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node, (haddr_t)TEST_SECT_ADDR80, (hsize_t)TEST_SECT_SIZE20, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node, - 0, NULL) < 0) + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node, 0, NULL) < 0) FAIL_STACK_ERROR HDmemset(&state, 0, sizeof(frspace_state_t)); @@ -707,24 +698,24 @@ test_fs_sect_add(hid_t fapl) state.tot_sect_count += 1; state.ghost_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR fr_meta_size = H5FS_HEADER_SIZE(f); /* Close the free space manager */ - if(H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) + if (H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) FAIL_STACK_ERROR /* Close the file */ - if(H5Fclose(file) < 0) + if (H5Fclose(file) < 0) FAIL_STACK_ERROR /* Get the size of a file w/empty heap*/ - if((tmp_file_size = h5_get_file_size(filename, fapl)) < 0) + if ((tmp_file_size = h5_get_file_size(filename, fapl)) < 0) TEST_ERROR - if (tmp_file_size != (file_size+fr_meta_size)) + if (tmp_file_size != (file_size + fr_meta_size)) TEST_ERROR PASSED() @@ -732,68 +723,69 @@ test_fs_sect_add(hid_t fapl) TESTING("adding a section via H5FS_sect_add() to free-space: test 3"); /* Create the file to work on */ - if((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) + if ((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) FAIL_STACK_ERROR /* Close file */ - if(H5Fclose(file) < 0) + if (H5Fclose(file) < 0) FAIL_STACK_ERROR /* Get the size of a file w/empty heap*/ - if((file_size = h5_get_file_size(filename, fapl)) < 0) + if ((file_size = h5_get_file_size(filename, fapl)) < 0) TEST_ERROR /* Re-open the file */ - if((file = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) + if ((file = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) FAIL_STACK_ERROR /* Get a pointer to the internal file object */ - if(NULL == (f = (H5F_t *)H5I_object(file))) + if (NULL == (f = (H5F_t *)H5I_object(file))) FAIL_STACK_ERROR - TEST_set_eoa((haddr_t)TEST_SECT_ADDR150); /* set end of file address for shrinking */ + TEST_set_eoa((haddr_t)TEST_SECT_ADDR150); /* set end of file address for shrinking */ init_cparam(&cparam); nclasses = NELMTS(test_classes); init_flags = 0; - if(NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, - &cparam, nclasses, test_classes, &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) - FAIL_STACK_ERROR + if (NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, &cparam, nclasses, test_classes, + &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) + FAIL_STACK_ERROR - if(!H5F_addr_defined(fs_addr)) + if (!H5F_addr_defined(fs_addr)) TEST_ERROR - if(NULL == (sect_node = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR /* * Add section A */ - init_sect_node(sect_node, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE50, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE50, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node, - H5FS_ADD_RETURNED_SPACE, &can_shrink) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node, + H5FS_ADD_RETURNED_SPACE, &can_shrink) < 0) + FAIL_STACK_ERROR /* nothing in free-space */ HDmemset(&state, 0, sizeof(frspace_state_t)); - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* Close the free space manager */ - if(H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) - FAIL_STACK_ERROR + if (H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) + FAIL_STACK_ERROR frsp = NULL; /* Delete free space manager */ - if(H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) - FAIL_STACK_ERROR + if (H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) + FAIL_STACK_ERROR fs_addr = HADDR_UNDEF; /* Close the file */ - if(H5Fclose(file) < 0) + if (H5Fclose(file) < 0) FAIL_STACK_ERROR PASSED() @@ -801,96 +793,98 @@ test_fs_sect_add(hid_t fapl) TESTING("adding a section via H5FS_sect_add() to free-space: test 4"); /* Create the file to work on */ - if((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) + if ((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) FAIL_STACK_ERROR /* Close file */ - if(H5Fclose(file) < 0) + if (H5Fclose(file) < 0) FAIL_STACK_ERROR /* Get the size of a file w/empty heap*/ - if((file_size = h5_get_file_size(filename, fapl)) < 0) + if ((file_size = h5_get_file_size(filename, fapl)) < 0) TEST_ERROR /* Re-open the file */ - if((file = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) + if ((file = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) FAIL_STACK_ERROR /* Get a pointer to the internal file object */ - if(NULL == (f = (H5F_t *)H5I_object(file))) + if (NULL == (f = (H5F_t *)H5I_object(file))) FAIL_STACK_ERROR - TEST_set_eoa((haddr_t)TEST_SECT_ADDR150); /* set end of file address for shrinking */ + TEST_set_eoa((haddr_t)TEST_SECT_ADDR150); /* set end of file address for shrinking */ init_cparam(&cparam); nclasses = NELMTS(test_classes); init_flags = 0; - if(NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, - &cparam, nclasses, test_classes, &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) - FAIL_STACK_ERROR + if (NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, &cparam, nclasses, test_classes, + &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) + FAIL_STACK_ERROR - if(!H5F_addr_defined(fs_addr)) + if (!H5F_addr_defined(fs_addr)) TEST_ERROR - if(NULL == (sect_node = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR /* * Add section A */ - init_sect_node(sect_node, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE50, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE50, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node, - H5FS_ADD_DESERIALIZING, &can_shrink) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node, + H5FS_ADD_DESERIALIZING, &can_shrink) < 0) + FAIL_STACK_ERROR HDmemset(&state, 0, sizeof(frspace_state_t)); state.tot_space += sect_node->sect_info.size; state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR - if(H5FS_sect_remove(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_remove(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node) < 0) + FAIL_STACK_ERROR /* Free the section node(s) */ - if(TEST_sect_free((H5FS_section_info_t *)sect_node) < 0) - TEST_ERROR + if (TEST_sect_free((H5FS_section_info_t *)sect_node) < 0) + TEST_ERROR sect_node = NULL; /* Close the free space manager */ - if(H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) - FAIL_STACK_ERROR + if (H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) + FAIL_STACK_ERROR frsp = NULL; /* Delete free space manager */ - if(H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) - FAIL_STACK_ERROR + if (H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) + FAIL_STACK_ERROR fs_addr = HADDR_UNDEF; /* Close the file */ - if(H5Fclose(file) < 0) + if (H5Fclose(file) < 0) FAIL_STACK_ERROR PASSED() - return(0); + return 0; error: - H5E_BEGIN_TRY { - if(sect_node) + H5E_BEGIN_TRY + { + if (sect_node) TEST_sect_free((H5FS_section_info_t *)sect_node); - if(frsp) - H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp); - H5Fclose(file); - } H5E_END_TRY; - return(1); + if (frsp) + H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp); + H5Fclose(file); + } + H5E_END_TRY; + return 1; } /* test_fs_sect_add() */ - /* * To verify the finding of a section with the requested-size from free-space * @@ -914,19 +908,19 @@ error: static unsigned test_fs_sect_find(hid_t fapl) { - hid_t file = -1; /* File ID */ - char filename[FILENAME_LEN]; /* Filename to use */ - H5F_t *f = NULL; /* Internal file object pointer */ - H5FS_t *frsp = NULL; /* pointer to free space structure */ - haddr_t fs_addr=HADDR_UNDEF; /* address of free space */ - size_t nclasses; - H5FS_create_t cparam; /* creation parameters */ - frspace_state_t state; /* State of free space*/ - - TEST_free_section_t *sect_node1 = NULL, *sect_node2, *sect_node3 = NULL, *sect_node4 = NULL; - TEST_free_section_t *node; - htri_t node_found = FALSE; - unsigned init_flags=0; + hid_t file = -1; /* File ID */ + char filename[FILENAME_LEN]; /* Filename to use */ + H5F_t * f = NULL; /* Internal file object pointer */ + H5FS_t * frsp = NULL; /* pointer to free space structure */ + haddr_t fs_addr = HADDR_UNDEF; /* address of free space */ + size_t nclasses; + H5FS_create_t cparam; /* creation parameters */ + frspace_state_t state; /* State of free space*/ + + TEST_free_section_t *sect_node1 = NULL, *sect_node2, *sect_node3 = NULL, *sect_node4 = NULL; + TEST_free_section_t *node; + htri_t node_found = FALSE; + unsigned init_flags = 0; TESTING("H5FS_sect_find(): free-space is empty"); @@ -934,40 +928,41 @@ test_fs_sect_find(hid_t fapl) h5_fixname(FILENAME[0], fapl, filename, sizeof(filename)); /* Create the file to work on */ - if((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) + if ((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) FAIL_STACK_ERROR /* Get a pointer to the internal file object */ - if(NULL == (f = (H5F_t *)H5I_object(file))) + if (NULL == (f = (H5F_t *)H5I_object(file))) FAIL_STACK_ERROR init_cparam(&cparam); nclasses = NELMTS(test_classes); - if(NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, - &cparam, nclasses, test_classes, &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) - FAIL_STACK_ERROR + if (NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, &cparam, nclasses, test_classes, + &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) + FAIL_STACK_ERROR - if(!H5F_addr_defined(fs_addr)) + if (!H5F_addr_defined(fs_addr)) TEST_ERROR HDmemset(&state, 0, sizeof(frspace_state_t)); - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR - if((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, - (hsize_t)TEST_SECT_SIZE30, (H5FS_section_info_t **)&node)) < 0) - FAIL_STACK_ERROR + if ((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, (hsize_t)TEST_SECT_SIZE30, + (H5FS_section_info_t **)&node)) < 0) + FAIL_STACK_ERROR - if (node_found) TEST_ERROR + if (node_found) + TEST_ERROR - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* Close the free space manager */ - if(H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) - FAIL_STACK_ERROR + if (H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) + FAIL_STACK_ERROR frsp = NULL; PASSED() @@ -975,127 +970,131 @@ test_fs_sect_find(hid_t fapl) TESTING("H5FS_sect_find() a section equal to requested-size from free-space"); /* reopen the free-space manager */ - if(NULL == (frsp = H5FS_open(f, H5P_DATASET_XFER_DEFAULT, fs_addr, nclasses, - test_classes, NULL, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) - FAIL_STACK_ERROR + if (NULL == (frsp = H5FS_open(f, H5P_DATASET_XFER_DEFAULT, fs_addr, nclasses, test_classes, NULL, + (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) + FAIL_STACK_ERROR - if(!H5F_addr_defined(fs_addr)) + if (!H5F_addr_defined(fs_addr)) TEST_ERROR if (frsp->nclasses != nclasses) - TEST_ERROR + TEST_ERROR /* * Add section A */ - if(NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR60, (hsize_t)TEST_SECT_SIZE30, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR60, (hsize_t)TEST_SECT_SIZE30, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR HDmemset(&state, 0, sizeof(frspace_state_t)); state.tot_space += sect_node1->sect_info.size; state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR - /* * Add section C */ - if(NULL == (sect_node3 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node3 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node3, (haddr_t)(TEST_SECT_ADDR200), (hsize_t)TEST_SECT_SIZE50, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node3, (haddr_t)(TEST_SECT_ADDR200), (hsize_t)TEST_SECT_SIZE50, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node3, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node3, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR state.tot_space += sect_node3->sect_info.size; state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* * Add section B */ - if(NULL == (sect_node2 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node2 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node2, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE50, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node2, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE50, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR state.tot_space += sect_node2->sect_info.size; state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* * Add section D */ - if(NULL == (sect_node4 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node4 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node4, (haddr_t)TEST_SECT_ADDR300, (hsize_t)TEST_SECT_SIZE80, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node4, (haddr_t)TEST_SECT_ADDR300, (hsize_t)TEST_SECT_SIZE80, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node4, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node4, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR state.tot_space += sect_node4->sect_info.size; state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR - if((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, - (hsize_t)TEST_SECT_SIZE50, (H5FS_section_info_t **)&node)) < 0) - FAIL_STACK_ERROR + if ((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, (hsize_t)TEST_SECT_SIZE50, + (H5FS_section_info_t **)&node)) < 0) + FAIL_STACK_ERROR - if (!node_found) TEST_ERROR + if (!node_found) + TEST_ERROR if ((node->sect_info.addr != TEST_SECT_ADDR100) || (node->sect_info.size != TEST_SECT_SIZE50)) - TEST_ERROR + TEST_ERROR - if(TEST_sect_free((H5FS_section_info_t *)node) < 0) - TEST_ERROR + if (TEST_sect_free((H5FS_section_info_t *)node) < 0) + TEST_ERROR /* remove sections A, C and D */ - if(H5FS_sect_remove(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1) < 0) - FAIL_STACK_ERROR - if(H5FS_sect_remove(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node3) < 0) - FAIL_STACK_ERROR - if(H5FS_sect_remove(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node4) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_remove(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1) < 0) + FAIL_STACK_ERROR + if (H5FS_sect_remove(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node3) < 0) + FAIL_STACK_ERROR + if (H5FS_sect_remove(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node4) < 0) + FAIL_STACK_ERROR /* Free the section node(s) */ - if(TEST_sect_free((H5FS_section_info_t *)sect_node1) < 0) - TEST_ERROR + if (TEST_sect_free((H5FS_section_info_t *)sect_node1) < 0) + TEST_ERROR sect_node1 = NULL; - if(TEST_sect_free((H5FS_section_info_t *)sect_node3) < 0) - TEST_ERROR + if (TEST_sect_free((H5FS_section_info_t *)sect_node3) < 0) + TEST_ERROR sect_node3 = NULL; - if(TEST_sect_free((H5FS_section_info_t *)sect_node4) < 0) - TEST_ERROR + if (TEST_sect_free((H5FS_section_info_t *)sect_node4) < 0) + TEST_ERROR sect_node4 = NULL; /* Close the free space manager */ - if(H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) - FAIL_STACK_ERROR + if (H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) + FAIL_STACK_ERROR frsp = NULL; PASSED() @@ -1103,78 +1102,81 @@ test_fs_sect_find(hid_t fapl) TESTING("H5FS_sect_find() a section greater than requested-size from free-space"); /* reopen the free-space manager */ - if(NULL == (frsp = H5FS_open(f, H5P_DATASET_XFER_DEFAULT, fs_addr, nclasses, - test_classes, NULL, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) - FAIL_STACK_ERROR + if (NULL == (frsp = H5FS_open(f, H5P_DATASET_XFER_DEFAULT, fs_addr, nclasses, test_classes, NULL, + (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) + FAIL_STACK_ERROR - if(!H5F_addr_defined(fs_addr)) + if (!H5F_addr_defined(fs_addr)) TEST_ERROR if (frsp->nclasses != nclasses) - TEST_ERROR + TEST_ERROR /* * Add section A */ - if(NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR60, (hsize_t)TEST_SECT_SIZE30, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR60, (hsize_t)TEST_SECT_SIZE30, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR HDmemset(&state, 0, sizeof(frspace_state_t)); state.tot_space += sect_node1->sect_info.size; state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* * Add section B */ - if(NULL == (sect_node2 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node2 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node2, (haddr_t)TEST_SECT_ADDR200, (hsize_t)TEST_SECT_SIZE80, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node2, (haddr_t)TEST_SECT_ADDR200, (hsize_t)TEST_SECT_SIZE80, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR state.tot_space += sect_node2->sect_info.size; state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR - if((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, - (hsize_t)TEST_SECT_SIZE50, (H5FS_section_info_t **)&node)) < 0) - FAIL_STACK_ERROR + if ((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, (hsize_t)TEST_SECT_SIZE50, + (H5FS_section_info_t **)&node)) < 0) + FAIL_STACK_ERROR - if (!node_found) TEST_ERROR + if (!node_found) + TEST_ERROR if ((node->sect_info.addr != TEST_SECT_ADDR200) || (node->sect_info.size < TEST_SECT_SIZE50)) - TEST_ERROR + TEST_ERROR - if(TEST_sect_free((H5FS_section_info_t *)node) < 0) - TEST_ERROR + if (TEST_sect_free((H5FS_section_info_t *)node) < 0) + TEST_ERROR node = NULL; /* remove sections A */ - if(H5FS_sect_remove(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_remove(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1) < 0) + FAIL_STACK_ERROR /* Free the section node(s) */ - if(TEST_sect_free((H5FS_section_info_t *)sect_node1) < 0) - TEST_ERROR + if (TEST_sect_free((H5FS_section_info_t *)sect_node1) < 0) + TEST_ERROR sect_node1 = NULL; /* Close the free space manager */ - if(H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) - FAIL_STACK_ERROR + if (H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) + FAIL_STACK_ERROR frsp = NULL; PASSED() @@ -1182,84 +1184,87 @@ test_fs_sect_find(hid_t fapl) TESTING("H5FS_sect_find(): cannot find a section with requested-size from free-space"); /* reopen the free-space manager */ - if(NULL == (frsp = H5FS_open(f, H5P_DATASET_XFER_DEFAULT, fs_addr, nclasses, - test_classes, NULL, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) - FAIL_STACK_ERROR + if (NULL == (frsp = H5FS_open(f, H5P_DATASET_XFER_DEFAULT, fs_addr, nclasses, test_classes, NULL, + (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) + FAIL_STACK_ERROR - if(!H5F_addr_defined(fs_addr)) + if (!H5F_addr_defined(fs_addr)) TEST_ERROR if (frsp->nclasses != nclasses) - TEST_ERROR + TEST_ERROR /* * Add section A */ - if(NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR60, (hsize_t)TEST_SECT_SIZE30, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR60, (hsize_t)TEST_SECT_SIZE30, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR HDmemset(&state, 0, sizeof(frspace_state_t)); state.tot_space += sect_node1->sect_info.size; state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR - if((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, - (hsize_t)TEST_SECT_SIZE50, (H5FS_section_info_t **)&node)) < 0) - FAIL_STACK_ERROR + if ((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, (hsize_t)TEST_SECT_SIZE50, + (H5FS_section_info_t **)&node)) < 0) + FAIL_STACK_ERROR - if (node_found) TEST_ERROR + if (node_found) + TEST_ERROR /* remove sections A */ - if(H5FS_sect_remove(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_remove(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1) < 0) + FAIL_STACK_ERROR /* Free the section node(s) */ - if(TEST_sect_free((H5FS_section_info_t *)sect_node1) < 0) - TEST_ERROR + if (TEST_sect_free((H5FS_section_info_t *)sect_node1) < 0) + TEST_ERROR sect_node1 = NULL; /* Close the free space manager */ - if(H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) - FAIL_STACK_ERROR + if (H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) + FAIL_STACK_ERROR frsp = NULL; /* Delete free space manager */ - if(H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) - FAIL_STACK_ERROR + if (H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) + FAIL_STACK_ERROR fs_addr = HADDR_UNDEF; /* Close the file */ - if(H5Fclose(file) < 0) + if (H5Fclose(file) < 0) FAIL_STACK_ERROR PASSED() - return(0); + return 0; error: - H5E_BEGIN_TRY { - if(sect_node1) + H5E_BEGIN_TRY + { + if (sect_node1) TEST_sect_free((H5FS_section_info_t *)sect_node1); - if(sect_node3) + if (sect_node3) TEST_sect_free((H5FS_section_info_t *)sect_node3); - if(sect_node4) + if (sect_node4) TEST_sect_free((H5FS_section_info_t *)sect_node4); - if(frsp) - H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp); - H5Fclose(file); - } H5E_END_TRY; - return(1); + if (frsp) + H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp); + H5Fclose(file); + } + H5E_END_TRY; + return 1; } /* test_fs_sect_find() */ - /* * To verify that sections are merged when adding sections to free-space * @@ -1295,19 +1300,19 @@ error: static unsigned test_fs_sect_merge(hid_t fapl) { - hid_t file = -1; /* File ID */ - char filename[FILENAME_LEN]; /* Filename to use */ - H5F_t *f = NULL; /* Internal file object pointer */ - H5FS_t *frsp = NULL; /* pointer to free space structure */ - haddr_t fs_addr=HADDR_UNDEF; /* address of free space */ - size_t nclasses; - H5FS_create_t cparam; /* creation parameters */ - frspace_state_t state; /* State of free space*/ - - TEST_free_section_t *sect_node1=NULL, *sect_node2=NULL, *sect_node3=NULL, *sect_node4=NULL; - unsigned init_flags=0; - htri_t node_found = FALSE; - TEST_free_section_t *node; + hid_t file = -1; /* File ID */ + char filename[FILENAME_LEN]; /* Filename to use */ + H5F_t * f = NULL; /* Internal file object pointer */ + H5FS_t * frsp = NULL; /* pointer to free space structure */ + haddr_t fs_addr = HADDR_UNDEF; /* address of free space */ + size_t nclasses; + H5FS_create_t cparam; /* creation parameters */ + frspace_state_t state; /* State of free space*/ + + TEST_free_section_t *sect_node1 = NULL, *sect_node2 = NULL, *sect_node3 = NULL, *sect_node4 = NULL; + unsigned init_flags = 0; + htri_t node_found = FALSE; + TEST_free_section_t *node; TESTING("the merge of sections when H5FS_sect_add() to free-space: test 1"); @@ -1318,123 +1323,129 @@ test_fs_sect_merge(hid_t fapl) h5_fixname(FILENAME[0], fapl, filename, sizeof(filename)); /* Create the file to work on */ - if((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) + if ((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) FAIL_STACK_ERROR /* Get a pointer to the internal file object */ - if(NULL == (f = (H5F_t *)H5I_object(file))) + if (NULL == (f = (H5F_t *)H5I_object(file))) FAIL_STACK_ERROR init_cparam(&cparam); nclasses = NELMTS(test_classes); - if(NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, - &cparam, nclasses, test_classes, &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) - FAIL_STACK_ERROR + if (NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, &cparam, nclasses, test_classes, + &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) + FAIL_STACK_ERROR - if(!H5F_addr_defined(fs_addr)) + if (!H5F_addr_defined(fs_addr)) TEST_ERROR /* * Add section C */ - if(NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE50, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE50, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR HDmemset(&state, 0, sizeof(frspace_state_t)); state.tot_space += TEST_SECT_SIZE50; state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* * Add section B */ - if(NULL == (sect_node2 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node2 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node2, (haddr_t)TEST_SECT_ADDR70, (hsize_t)TEST_SECT_SIZE30, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node2, (haddr_t)TEST_SECT_ADDR70, (hsize_t)TEST_SECT_SIZE30, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR /* section B & C are merged */ state.tot_space += TEST_SECT_SIZE30; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* * Add section A */ - if(NULL == (sect_node3 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node3 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node3, (haddr_t)TEST_SECT_ADDR60, (hsize_t)TEST_SECT_SIZE10, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node3, (haddr_t)TEST_SECT_ADDR60, (hsize_t)TEST_SECT_SIZE10, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node3, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node3, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR /* section A is merged with the merged section of B & C */ state.tot_space += TEST_SECT_SIZE10; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* * Add section D */ - if(NULL == (sect_node4 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node4 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node4, (haddr_t)TEST_SECT_ADDR150, (hsize_t)TEST_SECT_SIZE80, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node4, (haddr_t)TEST_SECT_ADDR150, (hsize_t)TEST_SECT_SIZE80, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node4, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node4, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR /* section D is merged with the merged section of A & B & C */ state.tot_space += TEST_SECT_SIZE80; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR - /* should be able to find the merged section of A, B, C & D */ - if((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, - (hsize_t)(TEST_SECT_SIZE10+TEST_SECT_SIZE30+TEST_SECT_SIZE50+TEST_SECT_SIZE80), (H5FS_section_info_t **)&node)) < 0) - FAIL_STACK_ERROR + if ((node_found = H5FS_sect_find( + f, H5P_DATASET_XFER_DEFAULT, frsp, + (hsize_t)(TEST_SECT_SIZE10 + TEST_SECT_SIZE30 + TEST_SECT_SIZE50 + TEST_SECT_SIZE80), + (H5FS_section_info_t **)&node)) < 0) + FAIL_STACK_ERROR - if (!node_found) TEST_ERROR + if (!node_found) + TEST_ERROR if ((node->sect_info.addr != TEST_SECT_ADDR60) || - (node->sect_info.size != (TEST_SECT_SIZE10+TEST_SECT_SIZE30+TEST_SECT_SIZE50+TEST_SECT_SIZE80))) - TEST_ERROR + (node->sect_info.size != (TEST_SECT_SIZE10 + TEST_SECT_SIZE30 + TEST_SECT_SIZE50 + TEST_SECT_SIZE80))) + TEST_ERROR - if(TEST_sect_free((H5FS_section_info_t *)node) < 0) - TEST_ERROR + if (TEST_sect_free((H5FS_section_info_t *)node) < 0) + TEST_ERROR /* Close the free space manager */ - if(H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) - FAIL_STACK_ERROR + if (H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) + FAIL_STACK_ERROR frsp = NULL; /* Delete free space manager */ - if(H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) - FAIL_STACK_ERROR + if (H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) + FAIL_STACK_ERROR fs_addr = HADDR_UNDEF; /* Close the file */ - if(H5Fclose(file) < 0) + if (H5Fclose(file) < 0) FAIL_STACK_ERROR PASSED() @@ -1445,98 +1456,102 @@ test_fs_sect_merge(hid_t fapl) TESTING("the merge of sections when H5FS_sect_add() to free-space: test 2"); /* Re-open the file */ - if((file = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) + if ((file = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) FAIL_STACK_ERROR /* Get a pointer to the internal file object */ - if(NULL == (f = (H5F_t *)H5I_object(file))) + if (NULL == (f = (H5F_t *)H5I_object(file))) FAIL_STACK_ERROR init_cparam(&cparam); nclasses = NELMTS(test_classes); init_flags = H5FS_CLS_SEPAR_OBJ; - if(NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, - &cparam, nclasses, test_classes, &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) - FAIL_STACK_ERROR + if (NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, &cparam, nclasses, test_classes, + &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) + FAIL_STACK_ERROR - if(!H5F_addr_defined(fs_addr)) + if (!H5F_addr_defined(fs_addr)) TEST_ERROR /* * Add section A */ - if(NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR70, (hsize_t)TEST_SECT_SIZE30, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR70, (hsize_t)TEST_SECT_SIZE30, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR HDmemset(&state, 0, sizeof(frspace_state_t)); state.tot_space += TEST_SECT_SIZE30; state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* * Add section B */ - if(NULL == (sect_node2 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node2 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node2, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE50, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node2, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE50, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR /* section A & B are not merged because H5FS_CLS_SEPAR_OBJ is set */ state.tot_space += TEST_SECT_SIZE50; state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* should not be able to find the merged section of A & B */ - if((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, - (hsize_t)(TEST_SECT_SIZE30+TEST_SECT_SIZE50), (H5FS_section_info_t **)&node)) < 0) - FAIL_STACK_ERROR + if ((node_found = + H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, (hsize_t)(TEST_SECT_SIZE30 + TEST_SECT_SIZE50), + (H5FS_section_info_t **)&node)) < 0) + FAIL_STACK_ERROR - if (node_found) TEST_ERROR + if (node_found) + TEST_ERROR /* remove section A from free-space */ - if(H5FS_sect_remove(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_remove(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1) < 0) + FAIL_STACK_ERROR /* remove section B from free-space */ - if(H5FS_sect_remove(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_remove(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2) < 0) + FAIL_STACK_ERROR /* Free the section node(s) */ - if(TEST_sect_free((H5FS_section_info_t *)sect_node1) < 0) - TEST_ERROR + if (TEST_sect_free((H5FS_section_info_t *)sect_node1) < 0) + TEST_ERROR sect_node1 = NULL; - if(TEST_sect_free((H5FS_section_info_t *)sect_node2) < 0) - TEST_ERROR + if (TEST_sect_free((H5FS_section_info_t *)sect_node2) < 0) + TEST_ERROR sect_node2 = NULL; /* Close the free space manager */ - if(H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) - FAIL_STACK_ERROR + if (H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) + FAIL_STACK_ERROR frsp = NULL; /* Delete free space manager */ - if(H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) - FAIL_STACK_ERROR + if (H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) + FAIL_STACK_ERROR fs_addr = HADDR_UNDEF; /* Close the file */ - if(H5Fclose(file) < 0) + if (H5Fclose(file) < 0) FAIL_STACK_ERROR PASSED() @@ -1547,93 +1562,97 @@ test_fs_sect_merge(hid_t fapl) TESTING("the merge of sections when H5FS_sect_add() to free-space: test 3"); /* Re-open the file */ - if((file = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) + if ((file = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) FAIL_STACK_ERROR /* Get a pointer to the internal file object */ - if(NULL == (f = (H5F_t *)H5I_object(file))) + if (NULL == (f = (H5F_t *)H5I_object(file))) FAIL_STACK_ERROR init_cparam(&cparam); nclasses = NELMTS(test_classes); init_flags = 0; /* reset */ - if(NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, - &cparam, nclasses, test_classes, &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) - FAIL_STACK_ERROR + if (NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, &cparam, nclasses, test_classes, + &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) + FAIL_STACK_ERROR - if(!H5F_addr_defined(fs_addr)) + if (!H5F_addr_defined(fs_addr)) TEST_ERROR /* * Add section A */ - if(NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR60, (hsize_t)TEST_SECT_SIZE10, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR60, (hsize_t)TEST_SECT_SIZE10, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR HDmemset(&state, 0, sizeof(frspace_state_t)); state.tot_space += TEST_SECT_SIZE10; state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* * Add section B */ - if(NULL == (sect_node2 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node2 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node2, (haddr_t)TEST_SECT_ADDR70, (hsize_t)TEST_SECT_SIZE30, TEST_FSPACE_SECT_TYPE_NEW, H5FS_SECT_LIVE); + init_sect_node(sect_node2, (haddr_t)TEST_SECT_ADDR70, (hsize_t)TEST_SECT_SIZE30, + TEST_FSPACE_SECT_TYPE_NEW, H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR /* sections A & B are not merged because H5FS_CLS_MERGE_SYM is set & section class type is different */ state.tot_space += TEST_SECT_SIZE30; state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* * Add section C */ - if(NULL == (sect_node3 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node3 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node3, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE50, TEST_FSPACE_SECT_TYPE_NEW, H5FS_SECT_LIVE); + init_sect_node(sect_node3, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE50, + TEST_FSPACE_SECT_TYPE_NEW, H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node3, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node3, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR /* sections B & C are merged because H5FS_CLS_MERGE_SYM is set & section class type is the same */ state.tot_space += TEST_SECT_SIZE50; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* * Add section D */ - if(NULL == (sect_node4 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node4 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node4, (haddr_t)TEST_SECT_ADDR150, (hsize_t)TEST_SECT_SIZE80, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node4, (haddr_t)TEST_SECT_ADDR150, (hsize_t)TEST_SECT_SIZE80, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node4, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node4, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR /* * section D is not merged with the merged section of B & C because @@ -1643,85 +1662,94 @@ test_fs_sect_merge(hid_t fapl) state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* should not be able to find a merged section of A, B, C & D */ - if((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, - (hsize_t)(TEST_SECT_SIZE10+TEST_SECT_SIZE30+TEST_SECT_SIZE50+TEST_SECT_SIZE80), (H5FS_section_info_t **)&node)) < 0) - FAIL_STACK_ERROR + if ((node_found = H5FS_sect_find( + f, H5P_DATASET_XFER_DEFAULT, frsp, + (hsize_t)(TEST_SECT_SIZE10 + TEST_SECT_SIZE30 + TEST_SECT_SIZE50 + TEST_SECT_SIZE80), + (H5FS_section_info_t **)&node)) < 0) + FAIL_STACK_ERROR - if (node_found) TEST_ERROR + if (node_found) + TEST_ERROR /* should be able to find the merged section of B & C */ - if((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, - (hsize_t)(TEST_SECT_SIZE30+TEST_SECT_SIZE50), (H5FS_section_info_t **)&node)) < 0) - FAIL_STACK_ERROR + if ((node_found = + H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, (hsize_t)(TEST_SECT_SIZE30 + TEST_SECT_SIZE50), + (H5FS_section_info_t **)&node)) < 0) + FAIL_STACK_ERROR - if (!node_found) TEST_ERROR + if (!node_found) + TEST_ERROR if ((node->sect_info.addr != TEST_SECT_ADDR70) || - (node->sect_info.size != (TEST_SECT_SIZE30+TEST_SECT_SIZE50))) - TEST_ERROR + (node->sect_info.size != (TEST_SECT_SIZE30 + TEST_SECT_SIZE50))) + TEST_ERROR - if(TEST_sect_free((H5FS_section_info_t *)node) < 0) - TEST_ERROR + if (TEST_sect_free((H5FS_section_info_t *)node) < 0) + TEST_ERROR /* should be able to find section A */ - if((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, - (hsize_t)(TEST_SECT_SIZE10), (H5FS_section_info_t **)&node)) < 0) - FAIL_STACK_ERROR + if ((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, (hsize_t)(TEST_SECT_SIZE10), + (H5FS_section_info_t **)&node)) < 0) + FAIL_STACK_ERROR - if (!node_found) TEST_ERROR + if (!node_found) + TEST_ERROR if ((node->sect_info.addr != TEST_SECT_ADDR60) || (node->sect_info.size != TEST_SECT_SIZE10)) - TEST_ERROR + TEST_ERROR - if(TEST_sect_free((H5FS_section_info_t *)node) < 0) - TEST_ERROR + if (TEST_sect_free((H5FS_section_info_t *)node) < 0) + TEST_ERROR /* should be able to find section D */ - if((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, - (hsize_t)(TEST_SECT_SIZE80), (H5FS_section_info_t **)&node)) < 0) - FAIL_STACK_ERROR + if ((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, (hsize_t)(TEST_SECT_SIZE80), + (H5FS_section_info_t **)&node)) < 0) + FAIL_STACK_ERROR - if (!node_found) TEST_ERROR + if (!node_found) + TEST_ERROR if ((node->sect_info.addr != TEST_SECT_ADDR150) || (node->sect_info.size != TEST_SECT_SIZE80)) - TEST_ERROR + TEST_ERROR - if(TEST_sect_free((H5FS_section_info_t *)node) < 0) - TEST_ERROR + if (TEST_sect_free((H5FS_section_info_t *)node) < 0) + TEST_ERROR /* Close the free space manager */ - if(H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) - FAIL_STACK_ERROR + if (H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) + FAIL_STACK_ERROR frsp = NULL; /* Delete free space manager */ - if(H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) - FAIL_STACK_ERROR + if (H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) + FAIL_STACK_ERROR fs_addr = HADDR_UNDEF; /* Close the file */ - if(H5Fclose(file) < 0) + if (H5Fclose(file) < 0) FAIL_STACK_ERROR PASSED() - return(0); + return 0; error: - H5E_BEGIN_TRY { - if(sect_node1) + H5E_BEGIN_TRY + { + if (sect_node1) TEST_sect_free((H5FS_section_info_t *)sect_node1); - if(sect_node2) + if (sect_node2) TEST_sect_free((H5FS_section_info_t *)sect_node2); - if(frsp) - H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp); - H5Fclose(file); - } H5E_END_TRY; - return(1); + if (frsp) + H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp); + H5Fclose(file); + } + H5E_END_TRY; + return 1; } /* test_fs_sect_merge() */ /* @@ -1761,20 +1789,20 @@ error: static unsigned test_fs_sect_shrink(hid_t fapl) { - hid_t file = -1; /* File ID */ - char filename[FILENAME_LEN]; /* Filename to use */ - H5F_t *f = NULL; /* Internal file object pointer */ - H5FS_t *frsp = NULL; /* pointer to free space structure */ - haddr_t fs_addr=HADDR_UNDEF; /* address of free space */ - size_t nclasses; - H5FS_create_t cparam; /* creation parameters */ - frspace_state_t state; /* State of free space*/ - - TEST_free_section_t *sect_node1=NULL, *sect_node2=NULL; - unsigned init_flags=0; - unsigned can_shrink=FALSE; - htri_t node_found = FALSE; - TEST_free_section_t *node; + hid_t file = -1; /* File ID */ + char filename[FILENAME_LEN]; /* Filename to use */ + H5F_t * f = NULL; /* Internal file object pointer */ + H5FS_t * frsp = NULL; /* pointer to free space structure */ + haddr_t fs_addr = HADDR_UNDEF; /* address of free space */ + size_t nclasses; + H5FS_create_t cparam; /* creation parameters */ + frspace_state_t state; /* State of free space*/ + + TEST_free_section_t *sect_node1 = NULL, *sect_node2 = NULL; + unsigned init_flags = 0; + unsigned can_shrink = FALSE; + htri_t node_found = FALSE; + TEST_free_section_t *node; TESTING("shrinking of sections when H5FS_sect_add() to free-space: test 1"); @@ -1782,198 +1810,204 @@ test_fs_sect_shrink(hid_t fapl) h5_fixname(FILENAME[0], fapl, filename, sizeof(filename)); /* Create the file to work on */ - if((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) + if ((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) FAIL_STACK_ERROR /* Get a pointer to the internal file object */ - if(NULL == (f = (H5F_t *)H5I_object(file))) + if (NULL == (f = (H5F_t *)H5I_object(file))) FAIL_STACK_ERROR init_cparam(&cparam); nclasses = NELMTS(test_classes); - TEST_set_eoa((haddr_t)TEST_SECT_ADDR150); /* set end of file address for shrinking */ + TEST_set_eoa((haddr_t)TEST_SECT_ADDR150); /* set end of file address for shrinking */ - if(NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, - &cparam, nclasses, test_classes, &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) - FAIL_STACK_ERROR + if (NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, &cparam, nclasses, test_classes, + &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) + FAIL_STACK_ERROR - if(!H5F_addr_defined(fs_addr)) + if (!H5F_addr_defined(fs_addr)) TEST_ERROR /* * Add section A that allow shrinking but its section class type does not define "can_shrink" */ - if(NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE50, TEST_FSPACE_SECT_TYPE_NEW, H5FS_SECT_LIVE); + init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE50, + TEST_FSPACE_SECT_TYPE_NEW, H5FS_SECT_LIVE); can_shrink = FALSE; - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, - H5FS_ADD_RETURNED_SPACE, &can_shrink) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, + H5FS_ADD_RETURNED_SPACE, &can_shrink) < 0) + FAIL_STACK_ERROR HDmemset(&state, 0, sizeof(frspace_state_t)); state.tot_space += sect_node1->sect_info.size; state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* section A should still be there in free-space */ - if((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, - (hsize_t)(TEST_SECT_SIZE50), (H5FS_section_info_t **)&node)) < 0) - FAIL_STACK_ERROR + if ((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, (hsize_t)(TEST_SECT_SIZE50), + (H5FS_section_info_t **)&node)) < 0) + FAIL_STACK_ERROR - if (!node_found) TEST_ERROR + if (!node_found) + TEST_ERROR if ((node->sect_info.addr != TEST_SECT_ADDR100) || (node->sect_info.size != TEST_SECT_SIZE50)) - TEST_ERROR + TEST_ERROR - if(TEST_sect_free((H5FS_section_info_t *)node) < 0) - TEST_ERROR + if (TEST_sect_free((H5FS_section_info_t *)node) < 0) + TEST_ERROR /* * Re-add section A that allow shrinking and its section class type defines "can_shrink" */ - if(NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE50, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE50, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); can_shrink = FALSE; - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, - H5FS_ADD_RETURNED_SPACE, &can_shrink) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, + H5FS_ADD_RETURNED_SPACE, &can_shrink) < 0) + FAIL_STACK_ERROR /* should have nothing in free-space */ HDmemset(&state, 0, sizeof(frspace_state_t)); - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* section A should not be there in free-space */ - if((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, - (hsize_t)(TEST_SECT_SIZE50), (H5FS_section_info_t **)&node)) < 0) - FAIL_STACK_ERROR + if ((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, (hsize_t)(TEST_SECT_SIZE50), + (H5FS_section_info_t **)&node)) < 0) + FAIL_STACK_ERROR - if (node_found) TEST_ERROR + if (node_found) + TEST_ERROR /* Close the free space manager */ - if(H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) - FAIL_STACK_ERROR + if (H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) + FAIL_STACK_ERROR frsp = NULL; /* Delete free space manager */ - if(H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) - FAIL_STACK_ERROR + if (H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) + FAIL_STACK_ERROR fs_addr = HADDR_UNDEF; /* Close the file */ - if(H5Fclose(file) < 0) + if (H5Fclose(file) < 0) FAIL_STACK_ERROR PASSED() - TESTING("shrinking of sections when H5FS_sect_add() to free-space: test 2"); /* Re-open the file */ - if((file = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) + if ((file = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) FAIL_STACK_ERROR /* Get a pointer to the internal file object */ - if(NULL == (f = (H5F_t *)H5I_object(file))) + if (NULL == (f = (H5F_t *)H5I_object(file))) FAIL_STACK_ERROR init_cparam(&cparam); nclasses = NELMTS(test_classes); - TEST_set_eoa((haddr_t)TEST_SECT_ADDR150); /* set end of file address for shrinking */ + TEST_set_eoa((haddr_t)TEST_SECT_ADDR150); /* set end of file address for shrinking */ /* does not allow merging */ init_flags = H5FS_CLS_SEPAR_OBJ; - if(NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, - &cparam, nclasses, test_classes, &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) - FAIL_STACK_ERROR + if (NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, &cparam, nclasses, test_classes, + &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) + FAIL_STACK_ERROR - if(!H5F_addr_defined(fs_addr)) + if (!H5F_addr_defined(fs_addr)) TEST_ERROR /* * Add section A */ - if(NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR80, (hsize_t)TEST_SECT_SIZE20, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR80, (hsize_t)TEST_SECT_SIZE20, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, - H5FS_ADD_RETURNED_SPACE, &can_shrink) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, + H5FS_ADD_RETURNED_SPACE, &can_shrink) < 0) + FAIL_STACK_ERROR HDmemset(&state, 0, sizeof(frspace_state_t)); state.tot_space += sect_node1->sect_info.size; state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* * Add section B */ - if(NULL == (sect_node2 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node2 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node2, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE50, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node2, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE50, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, - H5FS_ADD_RETURNED_SPACE, &can_shrink) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, + H5FS_ADD_RETURNED_SPACE, &can_shrink) < 0) + FAIL_STACK_ERROR /* free-space should be the same since section B is shrunk */ - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* section B should not be there in free-space */ - if((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, - (hsize_t)(TEST_SECT_SIZE50), (H5FS_section_info_t **)&node)) < 0) - FAIL_STACK_ERROR - - if (node_found) TEST_ERROR + if ((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, (hsize_t)(TEST_SECT_SIZE50), + (H5FS_section_info_t **)&node)) < 0) + FAIL_STACK_ERROR - if(check_stats(f, frsp, &state)) + if (node_found) TEST_ERROR + if (check_stats(f, frsp, &state)) + TEST_ERROR /* section A should still be there in free-space */ - if((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, - (hsize_t)(TEST_SECT_SIZE20), (H5FS_section_info_t **)&node)) < 0) - FAIL_STACK_ERROR + if ((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, (hsize_t)(TEST_SECT_SIZE20), + (H5FS_section_info_t **)&node)) < 0) + FAIL_STACK_ERROR - if (!node_found) TEST_ERROR + if (!node_found) + TEST_ERROR if ((node->sect_info.addr != TEST_SECT_ADDR80) || (node->sect_info.size != TEST_SECT_SIZE20)) - TEST_ERROR + TEST_ERROR - if(TEST_sect_free((H5FS_section_info_t *)node) < 0) - TEST_ERROR + if (TEST_sect_free((H5FS_section_info_t *)node) < 0) + TEST_ERROR /* Close the free space manager */ - if(H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) - FAIL_STACK_ERROR + if (H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) + FAIL_STACK_ERROR frsp = NULL; /* Delete free space manager */ - if(H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) - FAIL_STACK_ERROR + if (H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) + FAIL_STACK_ERROR fs_addr = HADDR_UNDEF; /* Close the file */ - if(H5Fclose(file) < 0) + if (H5Fclose(file) < 0) FAIL_STACK_ERROR PASSED() @@ -1981,102 +2015,108 @@ test_fs_sect_shrink(hid_t fapl) TESTING("shrinking of sections when H5FS_sect_add() to free-space: test 3"); /* Re-open the file */ - if((file = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) + if ((file = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) FAIL_STACK_ERROR /* Get a pointer to the internal file object */ - if(NULL == (f = (H5F_t *)H5I_object(file))) + if (NULL == (f = (H5F_t *)H5I_object(file))) FAIL_STACK_ERROR init_cparam(&cparam); nclasses = NELMTS(test_classes); - TEST_set_eoa((haddr_t)TEST_SECT_ADDR150); /* set end of file address for shrinking */ + TEST_set_eoa((haddr_t)TEST_SECT_ADDR150); /* set end of file address for shrinking */ init_flags = 0; /* reset */ - if(NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, - &cparam, nclasses, test_classes, &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) - FAIL_STACK_ERROR + if (NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, &cparam, nclasses, test_classes, + &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) + FAIL_STACK_ERROR - if(!H5F_addr_defined(fs_addr)) + if (!H5F_addr_defined(fs_addr)) TEST_ERROR /* * Add section A */ - if(NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR70, (hsize_t)TEST_SECT_SIZE30, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR70, (hsize_t)TEST_SECT_SIZE30, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, - H5FS_ADD_RETURNED_SPACE, &can_shrink) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, + H5FS_ADD_RETURNED_SPACE, &can_shrink) < 0) + FAIL_STACK_ERROR HDmemset(&state, 0, sizeof(frspace_state_t)); state.tot_space += sect_node1->sect_info.size; state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* * Add section B */ - if(NULL == (sect_node2 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node2 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node2, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE50, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node2, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE50, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, - H5FS_ADD_RETURNED_SPACE, &can_shrink) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, + H5FS_ADD_RETURNED_SPACE, &can_shrink) < 0) + FAIL_STACK_ERROR /* section A & B are merged and then strunk, so there is nothing in free-space */ HDmemset(&state, 0, sizeof(frspace_state_t)); - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* section B should not be there in free-space */ - if((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, - (hsize_t)(TEST_SECT_SIZE50), (H5FS_section_info_t **)&node)) < 0) - FAIL_STACK_ERROR + if ((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, (hsize_t)(TEST_SECT_SIZE50), + (H5FS_section_info_t **)&node)) < 0) + FAIL_STACK_ERROR - if (node_found) TEST_ERROR + if (node_found) + TEST_ERROR /* section A should not be there in free-space */ - if((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, - (hsize_t)(TEST_SECT_SIZE30), (H5FS_section_info_t **)&node)) < 0) - FAIL_STACK_ERROR + if ((node_found = H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, (hsize_t)(TEST_SECT_SIZE30), + (H5FS_section_info_t **)&node)) < 0) + FAIL_STACK_ERROR - if (node_found) TEST_ERROR + if (node_found) + TEST_ERROR /* Close the free space manager */ - if(H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) - FAIL_STACK_ERROR + if (H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) + FAIL_STACK_ERROR frsp = NULL; /* Delete free space manager */ - if(H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) - FAIL_STACK_ERROR + if (H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) + FAIL_STACK_ERROR fs_addr = HADDR_UNDEF; /* Close the file */ - if(H5Fclose(file) < 0) + if (H5Fclose(file) < 0) FAIL_STACK_ERROR PASSED() - return(0); + return 0; error: - H5E_BEGIN_TRY { - if(frsp) - H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp); - H5Fclose(file); - } H5E_END_TRY; - return(1); + H5E_BEGIN_TRY + { + if (frsp) + H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp); + H5Fclose(file); + } + H5E_END_TRY; + return 1; } /* test_sect_shrink() */ /* @@ -2099,18 +2139,18 @@ error: static unsigned test_fs_sect_change_class(hid_t fapl) { - hid_t file = -1; /* File ID */ - char filename[FILENAME_LEN]; /* Filename to use */ - H5F_t *f = NULL; /* Internal file object pointer */ - H5FS_t *frsp = NULL; /* pointer to free space structure */ - haddr_t fs_addr=HADDR_UNDEF; /* address of free space */ - size_t nclasses; - H5FS_create_t cparam; /* creation parameters */ - frspace_state_t state; /* State of free space*/ - - TEST_free_section_t *sect_node1=NULL, *sect_node2=NULL, *sect_node3=NULL; - unsigned init_flags=0; - TEST_free_section_t *node; + hid_t file = -1; /* File ID */ + char filename[FILENAME_LEN]; /* Filename to use */ + H5F_t * f = NULL; /* Internal file object pointer */ + H5FS_t * frsp = NULL; /* pointer to free space structure */ + haddr_t fs_addr = HADDR_UNDEF; /* address of free space */ + size_t nclasses; + H5FS_create_t cparam; /* creation parameters */ + frspace_state_t state; /* State of free space*/ + + TEST_free_section_t *sect_node1 = NULL, *sect_node2 = NULL, *sect_node3 = NULL; + unsigned init_flags = 0; + TEST_free_section_t *node; TESTING("the change of section class via H5FS_sect_change_class() in free-space: Test 1"); @@ -2118,102 +2158,104 @@ test_fs_sect_change_class(hid_t fapl) h5_fixname(FILENAME[0], fapl, filename, sizeof(filename)); /* Create the file to work on */ - if((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) + if ((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) FAIL_STACK_ERROR /* Get a pointer to the internal file object */ - if(NULL == (f = (H5F_t *)H5I_object(file))) + if (NULL == (f = (H5F_t *)H5I_object(file))) FAIL_STACK_ERROR init_cparam(&cparam); nclasses = NELMTS(test_classes); init_flags = H5FS_CLS_GHOST_OBJ; - if(NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, - &cparam, nclasses, test_classes, &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) - FAIL_STACK_ERROR + if (NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, &cparam, nclasses, test_classes, + &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) + FAIL_STACK_ERROR - if(!H5F_addr_defined(fs_addr)) + if (!H5F_addr_defined(fs_addr)) TEST_ERROR /* * Add section A */ - if(NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR60, (hsize_t)TEST_SECT_SIZE30, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR60, (hsize_t)TEST_SECT_SIZE30, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR HDmemset(&state, 0, sizeof(frspace_state_t)); state.tot_space += TEST_SECT_SIZE30; state.tot_sect_count += 1; state.ghost_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* * Add section B */ - if(NULL == (sect_node2 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node2 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node2, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE50, TEST_FSPACE_SECT_TYPE_NONE, H5FS_SECT_LIVE); + init_sect_node(sect_node2, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE50, + TEST_FSPACE_SECT_TYPE_NONE, H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR state.tot_space += TEST_SECT_SIZE50; state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR if (H5FS_sect_change_class(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, - TEST_FSPACE_SECT_TYPE_NONE) < 0) - TEST_ERROR + TEST_FSPACE_SECT_TYPE_NONE) < 0) + TEST_ERROR state.serial_sect_count += 1; - state.ghost_sect_count -=1; - if(check_stats(f, frsp, &state)) + state.ghost_sect_count -= 1; + if (check_stats(f, frsp, &state)) TEST_ERROR - if(H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, - (hsize_t)TEST_SECT_SIZE30, (H5FS_section_info_t **)&node) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, (hsize_t)TEST_SECT_SIZE30, + (H5FS_section_info_t **)&node) < 0) + FAIL_STACK_ERROR if (node->sect_info.type != TEST_FSPACE_SECT_TYPE_NONE) - TEST_ERROR + TEST_ERROR - if(TEST_sect_free((H5FS_section_info_t *)node) < 0) - TEST_ERROR + if (TEST_sect_free((H5FS_section_info_t *)node) < 0) + TEST_ERROR - if(H5FS_sect_remove(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_remove(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2) < 0) + FAIL_STACK_ERROR /* Free the section node(s) */ - if(TEST_sect_free((H5FS_section_info_t *)sect_node2) < 0) - TEST_ERROR + if (TEST_sect_free((H5FS_section_info_t *)sect_node2) < 0) + TEST_ERROR sect_node2 = NULL; /* Close the free space manager */ - if(H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) - FAIL_STACK_ERROR + if (H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) + FAIL_STACK_ERROR frsp = NULL; /* Delete free space manager */ - if(H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) - FAIL_STACK_ERROR + if (H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) + FAIL_STACK_ERROR fs_addr = HADDR_UNDEF; /* Close the file */ - if(H5Fclose(file) < 0) + if (H5Fclose(file) < 0) FAIL_STACK_ERROR PASSED() @@ -2224,138 +2266,142 @@ test_fs_sect_change_class(hid_t fapl) TESTING("the merge of sections when H5FS_sect_add() to free-space: test 2"); /* Re-open the file */ - if((file = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) + if ((file = H5Fopen(filename, H5F_ACC_RDWR, fapl)) < 0) FAIL_STACK_ERROR /* Get a pointer to the internal file object */ - if(NULL == (f = (H5F_t *)H5I_object(file))) + if (NULL == (f = (H5F_t *)H5I_object(file))) FAIL_STACK_ERROR init_cparam(&cparam); nclasses = NELMTS(test_classes); init_flags = H5FS_CLS_SEPAR_OBJ; - if(NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, - &cparam, nclasses, test_classes, &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) - FAIL_STACK_ERROR + if (NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, &cparam, nclasses, test_classes, + &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) + FAIL_STACK_ERROR - if(!H5F_addr_defined(fs_addr)) + if (!H5F_addr_defined(fs_addr)) TEST_ERROR /* * Add section A */ - if(NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR70, (hsize_t)TEST_SECT_SIZE30, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR70, (hsize_t)TEST_SECT_SIZE30, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR /* * Add section B */ - if(NULL == (sect_node2 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node2 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node2, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE50, TEST_FSPACE_SECT_TYPE_NONE, H5FS_SECT_LIVE); + init_sect_node(sect_node2, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE50, + TEST_FSPACE_SECT_TYPE_NONE, H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR /* * Add section C */ - if(NULL == (sect_node3 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node3 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node3, (haddr_t)TEST_SECT_ADDR200, (hsize_t)TEST_SECT_SIZE80, TEST_FSPACE_SECT_TYPE_NONE, H5FS_SECT_LIVE); + init_sect_node(sect_node3, (haddr_t)TEST_SECT_ADDR200, (hsize_t)TEST_SECT_SIZE80, + TEST_FSPACE_SECT_TYPE_NONE, H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node3, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node3, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR /* change the class of B to A's class */ if (H5FS_sect_change_class(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, - TEST_FSPACE_SECT_TYPE) < 0) - TEST_ERROR + TEST_FSPACE_SECT_TYPE) < 0) + TEST_ERROR /* change the class of C to A's class */ if (H5FS_sect_change_class(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node3, - TEST_FSPACE_SECT_TYPE) < 0) - TEST_ERROR + TEST_FSPACE_SECT_TYPE) < 0) + TEST_ERROR /* the merge_list should be empty */ if (frsp->sinfo->merge_list) - if (H5SL_count(frsp->sinfo->merge_list)) - TEST_ERROR + if (H5SL_count(frsp->sinfo->merge_list)) + TEST_ERROR /* verify that section B has changed class */ - if(H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, - (hsize_t)TEST_SECT_SIZE50, (H5FS_section_info_t **)&node) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, (hsize_t)TEST_SECT_SIZE50, + (H5FS_section_info_t **)&node) < 0) + FAIL_STACK_ERROR if (node->sect_info.type != TEST_FSPACE_SECT_TYPE) - TEST_ERROR + TEST_ERROR - if(TEST_sect_free((H5FS_section_info_t *)node) < 0) - TEST_ERROR + if (TEST_sect_free((H5FS_section_info_t *)node) < 0) + TEST_ERROR /* verify that section C has changed class */ - if(H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, - (hsize_t)TEST_SECT_SIZE80, (H5FS_section_info_t **)&node) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_find(f, H5P_DATASET_XFER_DEFAULT, frsp, (hsize_t)TEST_SECT_SIZE80, + (H5FS_section_info_t **)&node) < 0) + FAIL_STACK_ERROR if (node->sect_info.type != TEST_FSPACE_SECT_TYPE) - TEST_ERROR + TEST_ERROR - if(TEST_sect_free((H5FS_section_info_t *)node) < 0) - TEST_ERROR + if (TEST_sect_free((H5FS_section_info_t *)node) < 0) + TEST_ERROR /* remove section A from free-space */ - if(H5FS_sect_remove(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_remove(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1) < 0) + FAIL_STACK_ERROR /* Free the section node(s) */ - if(TEST_sect_free((H5FS_section_info_t *)sect_node1) < 0) - TEST_ERROR + if (TEST_sect_free((H5FS_section_info_t *)sect_node1) < 0) + TEST_ERROR sect_node1 = NULL; /* Close the free space manager */ - if(H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) - FAIL_STACK_ERROR + if (H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) + FAIL_STACK_ERROR frsp = NULL; /* Delete free space manager */ - if(H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) - FAIL_STACK_ERROR + if (H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) + FAIL_STACK_ERROR fs_addr = HADDR_UNDEF; /* Close the file */ - if(H5Fclose(file) < 0) + if (H5Fclose(file) < 0) FAIL_STACK_ERROR PASSED() - return(0); + return 0; error: - H5E_BEGIN_TRY { - if(sect_node1) + H5E_BEGIN_TRY + { + if (sect_node1) TEST_sect_free((H5FS_section_info_t *)sect_node1); - if(sect_node2) + if (sect_node2) TEST_sect_free((H5FS_section_info_t *)sect_node2); - if(frsp) - H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp); - H5Fclose(file); - } H5E_END_TRY; - return(1); + if (frsp) + H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp); + H5Fclose(file); + } + H5E_END_TRY; + return 1; } /* test_sect_change_class() */ - /* * To verify the extension of a block using space from a section in free-space * @@ -2389,28 +2435,28 @@ error: static unsigned test_fs_sect_extend(hid_t fapl) { - hid_t file = -1; /* File ID */ - char filename[FILENAME_LEN]; /* Filename to use */ - H5F_t *f = NULL; /* Internal file object pointer */ - H5FS_t *frsp = NULL; /* pointer to free space structure */ - haddr_t fs_addr=HADDR_UNDEF; /* address of free space */ - size_t nclasses; - H5FS_create_t cparam; /* creation parameters */ - frspace_state_t state; /* State of free space*/ - TEST_free_section_t *sect_node1=NULL, *sect_node2=NULL; - unsigned init_flags=0; - htri_t status; /* Status of 'try' calls */ + hid_t file = -1; /* File ID */ + char filename[FILENAME_LEN]; /* Filename to use */ + H5F_t * f = NULL; /* Internal file object pointer */ + H5FS_t * frsp = NULL; /* pointer to free space structure */ + haddr_t fs_addr = HADDR_UNDEF; /* address of free space */ + size_t nclasses; + H5FS_create_t cparam; /* creation parameters */ + frspace_state_t state; /* State of free space*/ + TEST_free_section_t *sect_node1 = NULL, *sect_node2 = NULL; + unsigned init_flags = 0; + htri_t status; /* Status of 'try' calls */ TESTING("a block's extension by requested-size which is = adjoining free section's size: Test 1"); h5_fixname(FILENAME[0], fapl, filename, sizeof(filename)); /* Create the file to work on */ - if((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) + if ((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) FAIL_STACK_ERROR /* Get a pointer to the internal file object */ - if(NULL == (f = (H5F_t *)H5I_object(file))) + if (NULL == (f = (H5F_t *)H5I_object(file))) FAIL_STACK_ERROR /* @@ -2419,73 +2465,76 @@ test_fs_sect_extend(hid_t fapl) init_cparam(&cparam); nclasses = NELMTS(test_classes); - if(NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, - &cparam, nclasses, test_classes, &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) - FAIL_STACK_ERROR + if (NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, &cparam, nclasses, test_classes, + &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) + FAIL_STACK_ERROR - if(!H5F_addr_defined(fs_addr)) + if (!H5F_addr_defined(fs_addr)) TEST_ERROR /* * Add section A */ - if(NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR70, (hsize_t)TEST_SECT_SIZE5, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR70, (hsize_t)TEST_SECT_SIZE5, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR HDmemset(&state, 0, sizeof(frspace_state_t)); state.tot_space += sect_node1->sect_info.size; state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* * Add section B */ - if(NULL == (sect_node2 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node2 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node2, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE40, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node2, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE40, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR state.tot_space += sect_node2->sect_info.size; state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* Extend a block by requested-size */ - if((status = H5FS_sect_try_extend(f, H5P_DATASET_XFER_DEFAULT, frsp, (haddr_t)TEST_SECT_SIZE80, (hsize_t)TEST_SECT_SIZE20, (hsize_t)TEST_SECT_SIZE40)) < 0) - FAIL_STACK_ERROR - if(FALSE == status) + if ((status = H5FS_sect_try_extend(f, H5P_DATASET_XFER_DEFAULT, frsp, (haddr_t)TEST_SECT_SIZE80, + (hsize_t)TEST_SECT_SIZE20, (hsize_t)TEST_SECT_SIZE40)) < 0) + FAIL_STACK_ERROR + if (FALSE == status) TEST_ERROR /* Succeed in extending the block: free space info is decremented accordingly */ state.tot_space -= (hsize_t)TEST_SECT_SIZE40; state.tot_sect_count -= 1; state.serial_sect_count -= 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* Close the free space manager */ - if(H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) - FAIL_STACK_ERROR + if (H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) + FAIL_STACK_ERROR frsp = NULL; /* Delete free space manager */ - if(H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) - FAIL_STACK_ERROR + if (H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) + FAIL_STACK_ERROR fs_addr = HADDR_UNDEF; PASSED() @@ -2495,70 +2544,73 @@ test_fs_sect_extend(hid_t fapl) */ TESTING("a block's extension by requested-size which is > adjoining free section's size: Test 2"); - if(NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, - &cparam, nclasses, test_classes, &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) - FAIL_STACK_ERROR + if (NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, &cparam, nclasses, test_classes, + &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) + FAIL_STACK_ERROR - if(!H5F_addr_defined(fs_addr)) + if (!H5F_addr_defined(fs_addr)) TEST_ERROR /* * Add section A */ - if(NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR70, (hsize_t)TEST_SECT_SIZE5, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR70, (hsize_t)TEST_SECT_SIZE5, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR HDmemset(&state, 0, sizeof(frspace_state_t)); state.tot_space += sect_node1->sect_info.size; state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* * Add section B */ - if(NULL == (sect_node2 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node2 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node2, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE40, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node2, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE40, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR state.tot_space += sect_node2->sect_info.size; state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* Extend the block by requested-size */ - if((status = H5FS_sect_try_extend(f, H5P_DATASET_XFER_DEFAULT, frsp, (haddr_t)TEST_SECT_ADDR80, (hsize_t)TEST_SECT_SIZE20, (hsize_t)TEST_SECT_SIZE50)) < 0) - FAIL_STACK_ERROR - if(TRUE == status) + if ((status = H5FS_sect_try_extend(f, H5P_DATASET_XFER_DEFAULT, frsp, (haddr_t)TEST_SECT_ADDR80, + (hsize_t)TEST_SECT_SIZE20, (hsize_t)TEST_SECT_SIZE50)) < 0) + FAIL_STACK_ERROR + if (TRUE == status) TEST_ERROR /* Not able to extend the block: free space info remains the same */ - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* Close the free space manager */ - if(H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) - FAIL_STACK_ERROR + if (H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) + FAIL_STACK_ERROR frsp = NULL; /* Delete free space manager */ - if(H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) - FAIL_STACK_ERROR + if (H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) + FAIL_STACK_ERROR fs_addr = HADDR_UNDEF; PASSED() @@ -2568,71 +2620,74 @@ test_fs_sect_extend(hid_t fapl) */ TESTING("a block's extension by requested-size which is < adjoining free section's size: Test 3"); - if(NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, - &cparam, nclasses, test_classes, &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) - FAIL_STACK_ERROR + if (NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, &cparam, nclasses, test_classes, + &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) + FAIL_STACK_ERROR - if(!H5F_addr_defined(fs_addr)) + if (!H5F_addr_defined(fs_addr)) TEST_ERROR /* * Add section A */ - if(NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR70, (hsize_t)TEST_SECT_SIZE5, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR70, (hsize_t)TEST_SECT_SIZE5, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR HDmemset(&state, 0, sizeof(frspace_state_t)); state.tot_space += sect_node1->sect_info.size; state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* * Add section B */ - if(NULL == (sect_node2 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node2 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node2, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE40, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node2, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE40, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR state.tot_space += sect_node2->sect_info.size; state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* Extend the block by requested-size */ - if((status = H5FS_sect_try_extend(f, H5P_DATASET_XFER_DEFAULT, frsp, (haddr_t)TEST_SECT_ADDR80, (hsize_t)TEST_SECT_SIZE20, (hsize_t)TEST_SECT_SIZE30)) < 0) - TEST_ERROR - if(FALSE == status) + if ((status = H5FS_sect_try_extend(f, H5P_DATASET_XFER_DEFAULT, frsp, (haddr_t)TEST_SECT_ADDR80, + (hsize_t)TEST_SECT_SIZE20, (hsize_t)TEST_SECT_SIZE30)) < 0) + TEST_ERROR + if (FALSE == status) TEST_ERROR /* Succeed in extending the block: total free space is decreased but other info remains the same */ state.tot_space -= 30; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* Close the free space manager */ - if(H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) - FAIL_STACK_ERROR + if (H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) + FAIL_STACK_ERROR frsp = NULL; /* Delete free space manager */ - if(H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) - FAIL_STACK_ERROR + if (H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) + FAIL_STACK_ERROR fs_addr = HADDR_UNDEF; PASSED() @@ -2642,90 +2697,94 @@ test_fs_sect_extend(hid_t fapl) */ TESTING("a block's extension by requested-size which does not adjoin any free section: Test 4"); - if(NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, - &cparam, nclasses, test_classes, &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) - FAIL_STACK_ERROR + if (NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, &cparam, nclasses, test_classes, + &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) + FAIL_STACK_ERROR - if(!H5F_addr_defined(fs_addr)) + if (!H5F_addr_defined(fs_addr)) TEST_ERROR /* * Add section A */ - if(NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node1 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR70, (hsize_t)TEST_SECT_SIZE5, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node1, (haddr_t)TEST_SECT_ADDR70, (hsize_t)TEST_SECT_SIZE5, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node1, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR HDmemset(&state, 0, sizeof(frspace_state_t)); state.tot_space += sect_node1->sect_info.size; state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* * Add section B */ - if(NULL == (sect_node2 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node2 = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - init_sect_node(sect_node2, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE40, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + init_sect_node(sect_node2, (haddr_t)TEST_SECT_ADDR100, (hsize_t)TEST_SECT_SIZE40, TEST_FSPACE_SECT_TYPE, + H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node2, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR state.tot_space += sect_node2->sect_info.size; state.tot_sect_count += 1; state.serial_sect_count += 1; - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* Extend the block by requested-size */ - if((status = H5FS_sect_try_extend(f, H5P_DATASET_XFER_DEFAULT, frsp, (haddr_t)TEST_SECT_ADDR80, (hsize_t)TEST_SECT_SIZE15, (hsize_t)TEST_SECT_SIZE40)) < 0) - TEST_ERROR - if(TRUE == status) + if ((status = H5FS_sect_try_extend(f, H5P_DATASET_XFER_DEFAULT, frsp, (haddr_t)TEST_SECT_ADDR80, + (hsize_t)TEST_SECT_SIZE15, (hsize_t)TEST_SECT_SIZE40)) < 0) + TEST_ERROR + if (TRUE == status) TEST_ERROR /* Not able to extend the block: free space manager info remains the same */ - if(check_stats(f, frsp, &state)) + if (check_stats(f, frsp, &state)) TEST_ERROR /* Close the free space manager */ - if(H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) - FAIL_STACK_ERROR + if (H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) + FAIL_STACK_ERROR frsp = NULL; /* Delete free space manager */ - if(H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) - FAIL_STACK_ERROR + if (H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) + FAIL_STACK_ERROR fs_addr = HADDR_UNDEF; PASSED() /* Close the file */ - if(H5Fclose(file) < 0) + if (H5Fclose(file) < 0) FAIL_STACK_ERROR - return(0); + return 0; error: - H5E_BEGIN_TRY { - if(frsp) - H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp); - H5Fclose(file); - } H5E_END_TRY; - return(1); + H5E_BEGIN_TRY + { + if (frsp) + H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp); + H5Fclose(file); + } + H5E_END_TRY; + return 1; } /* test_sect_extend() */ - /* * To verify the iteration of free-space sections * @@ -2737,19 +2796,19 @@ error: static unsigned test_fs_sect_iterate(hid_t fapl) { - hid_t file = -1; /* File ID */ - char filename[FILENAME_LEN]; /* Filename to use */ - H5F_t *f = NULL; /* Internal file object pointer */ - H5FS_t *frsp = NULL; /* pointer to free space structure */ - haddr_t fs_addr=HADDR_UNDEF; /* address of free space */ - size_t nclasses; - H5FS_create_t cparam; /* creation parameters */ - - TEST_free_section_t *sect_node=NULL; - unsigned init_flags=0, sect_size; - TEST_iter_ud_t udata; - int i; - hsize_t tot_space, nsects; + hid_t file = -1; /* File ID */ + char filename[FILENAME_LEN]; /* Filename to use */ + H5F_t * f = NULL; /* Internal file object pointer */ + H5FS_t * frsp = NULL; /* pointer to free space structure */ + haddr_t fs_addr = HADDR_UNDEF; /* address of free space */ + size_t nclasses; + H5FS_create_t cparam; /* creation parameters */ + + TEST_free_section_t *sect_node = NULL; + unsigned init_flags = 0, sect_size; + TEST_iter_ud_t udata; + int i; + hsize_t tot_space, nsects; TESTING("iteration of sections in the free-space manager"); @@ -2757,95 +2816,101 @@ test_fs_sect_iterate(hid_t fapl) h5_fixname(FILENAME[0], fapl, filename, sizeof(filename)); /* Create the file to work on */ - if((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) + if ((file = H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0) FAIL_STACK_ERROR /* Get a pointer to the internal file object */ - if(NULL == (f = (H5F_t *)H5I_object(file))) + if (NULL == (f = (H5F_t *)H5I_object(file))) FAIL_STACK_ERROR init_cparam(&cparam); - nclasses = NELMTS(test_classes); - udata.tot_size = 0; + nclasses = NELMTS(test_classes); + udata.tot_size = 0; udata.tot_sect_count = 0; init_flags = H5FS_CLS_SEPAR_OBJ; - if(NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, - &cparam, nclasses, test_classes, &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) - FAIL_STACK_ERROR + if (NULL == (frsp = H5FS_create(f, H5P_DATASET_XFER_DEFAULT, &fs_addr, &cparam, nclasses, test_classes, + &init_flags, (hsize_t)FSPACE_THRHD_DEF, (hsize_t)FSPACE_ALIGN_DEF))) + FAIL_STACK_ERROR - if(!H5F_addr_defined(fs_addr)) + if (!H5F_addr_defined(fs_addr)) TEST_ERROR for (i = 1; i <= NUM_SECTIONS; i++) { - if(NULL == (sect_node = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) - FAIL_STACK_ERROR + if (NULL == (sect_node = (TEST_free_section_t *)HDmalloc(sizeof(TEST_free_section_t)))) + FAIL_STACK_ERROR - sect_size = (unsigned)((i-1) % 9) + 1; - init_sect_node(sect_node, (haddr_t)i*10, (hsize_t)sect_size, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); + sect_size = (unsigned)((i - 1) % 9) + 1; + init_sect_node(sect_node, (haddr_t)i * 10, (hsize_t)sect_size, TEST_FSPACE_SECT_TYPE, H5FS_SECT_LIVE); - if(H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node, - H5FS_ADD_RETURNED_SPACE, NULL) < 0) - FAIL_STACK_ERROR + if (H5FS_sect_add(f, H5P_DATASET_XFER_DEFAULT, frsp, (H5FS_section_info_t *)sect_node, + H5FS_ADD_RETURNED_SPACE, NULL) < 0) + FAIL_STACK_ERROR } - if(H5FS_sect_iterate(f, H5P_DATASET_XFER_DEFAULT, frsp, TEST_sects_cb, &udata) < 0) - TEST_ERROR + if (H5FS_sect_iterate(f, H5P_DATASET_XFER_DEFAULT, frsp, TEST_sects_cb, &udata) < 0) + TEST_ERROR H5FS_sect_stats(frsp, &tot_space, &nsects); if (udata.tot_size != tot_space) - TEST_ERROR + TEST_ERROR if (udata.tot_sect_count != nsects) - TEST_ERROR + TEST_ERROR /* Close the free space manager */ - if(H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) - FAIL_STACK_ERROR + if (H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp) < 0) + FAIL_STACK_ERROR frsp = NULL; /* Delete free space manager */ - if(H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) - FAIL_STACK_ERROR + if (H5FS_delete(f, H5P_DATASET_XFER_DEFAULT, fs_addr) < 0) + FAIL_STACK_ERROR fs_addr = HADDR_UNDEF; /* Close the file */ - if(H5Fclose(file) < 0) + if (H5Fclose(file) < 0) FAIL_STACK_ERROR PASSED() - return(0); + return 0; error: - H5E_BEGIN_TRY { - if(frsp) - H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp); - H5Fclose(file); - } H5E_END_TRY; - return(1); + H5E_BEGIN_TRY + { + if (frsp) + H5FS_close(f, H5P_DATASET_XFER_DEFAULT, frsp); + H5Fclose(file); + } + H5E_END_TRY; + return 1; } /* test_fs_sect_iterate() */ - int main(void) { - hid_t fapl = -1; /* File access property list for data files */ - unsigned nerrors = 0; /* Cumulative error count */ - const char *env_h5_drvr = NULL; /* File Driver value from environment */ + hid_t fapl = -1; /* File access property list for data files */ + unsigned nerrors = 0; /* Cumulative error count */ + const char *env_h5_drvr = NULL; /* File Driver value from environment */ /* Get the VFD to use */ env_h5_drvr = HDgetenv("HDF5_DRIVER"); - if(env_h5_drvr == NULL) + if (env_h5_drvr == NULL) env_h5_drvr = "nomatch"; h5_reset(); - fapl = h5_fileaccess(); + if ((fapl = h5_fileaccess()) < 0) { + nerrors++; + PUTS_ERROR("Can't get VFD-dependent fapl") + } /* end if */ /* make sure alignment is not set for tests to succeed */ - if(H5Pset_alignment(fapl, (hsize_t)1, (hsize_t)1) < 0) - TEST_ERROR + if (H5Pset_alignment(fapl, (hsize_t)1, (hsize_t)1) < 0) { + nerrors++; + PUTS_ERROR("Can't set alignment") + } /* end if */ nerrors += test_fs_create(fapl); nerrors += test_fs_sect_add(fapl); @@ -2859,18 +2924,17 @@ main(void) /* Verify symbol table messages are cached */ nerrors += (h5_verify_cached_stabs(FILENAME, fapl) < 0 ? 1 : 0); - if(nerrors) + if (nerrors) goto error; - puts("All free-space tests passed."); + HDputs("All free-space tests passed."); h5_cleanup(FILENAME, fapl); - return (0); + HDexit(EXIT_SUCCESS); error: - puts("*** TESTS FAILED ***"); - H5E_BEGIN_TRY { - H5Pclose(fapl); - } H5E_END_TRY; - return (1); -} /* main() */ + HDputs("*** TESTS FAILED ***"); + H5E_BEGIN_TRY { H5Pclose(fapl); } + H5E_END_TRY; + HDexit(EXIT_FAILURE); +} /* main() */ |