Commit Graph

140 Commits

Author SHA1 Message Date
Quincey Koziol
ba087ce2b5 Clean up private / package / static namespace issues (function naming, which
header file, FUNC_ENTER / LEAVE, etc).  Removed remaining personal email
addresses from library source code (still needs cleaned from other directories).
Misc. warning, style, and whitespace cleanup.
2020-08-22 14:00:44 -05:00
Dana Robinson
1ae6daaa80 Sync with develop 2020-08-01 09:18:18 -07:00
David Young
d42bee3688 Squashed commit of the following:
commit ff7a9a34de2fcd78f5d32a1532f3d0e224b20d94
Author: Kimmy Mu <kmu@hdfgroup.org>
Date:   Wed Jan 29 14:12:18 2020 -0600

    Merge pull request #2324 in HDFFV/hdf5 from ~KMU/hdf5:hdf5_1_12 to hdf5_1_12

    * commit '781fa57f6ee816e037dd12fff02d37ff7ec9c2b1':
      pick up missing piece from merge
      Merge pull request #2311 in HDFFV/hdf5 from ~KMU/hdf5:misc to develop
      remove redundent definition
      Merge pull request #2311 in HDFFV/hdf5 from ~KMU/hdf5:misc to develop
      Merge pull request #2311 in HDFFV/hdf5 from ~KMU/hdf5:misc to develop
      Merge pull request #2315 in HDFFV/hdf5 from ~KMU/hdf5:develop to develop
      missing prototype warning
      prototype issue
      Merge pull request #2306 in HDFFV/hdf5 from ~KMU/hdf5:develop to develop
      Merge pull request #2300 in HDFFV/hdf5 from ~KMU/hdf5:squashed_cast to develop
      Merge pull request #2291 in HDFFV/hdf5 from ~KMU/hdf5:bugfix/uninitialized to develop
      Merge pull request #2295 in HDFFV/hdf5 from ~KMU/hdf5:bugfix/float to develop
      Merge pull request #2292 in HDFFV/hdf5 from ~KMU/hdf5:bugfix/prototype to develop
      Merge pull request #2094 in HDFFV/hdf5 from ~KMU/hdf5:bugfix/unused to develop

commit 9f3d808c05d2a3b308f32c958c6671fcac0a432c
Author: David Young <dyoung@hdfgroup.org>
Date:   Wed Jan 29 11:43:55 2020 -0600

    testpar/t_2Gio.c: Fix a typo that I think was introduced by a
            previous warnings PR.  An array element was assigned to
            itself---shape[2]Â =Â shape[2];---instead of being assigned to
            chunk[2].

    fortran/src/H5Pf.c: move conditional compilation controlled by
            H5_NO_DEPRECATED_SYMBOLS outside of a function for readability.

    fortran/src/H5match_types.c: put a variable's declaration under the same
            conditional compilation (H5_FORTRAN_HAVE_C_LONG_DOUBLE) as its
            use.

    For now, skip compilation of some unused debug dump routines in the JNI.
    While I'm in the JNI, delete a set-but-unused variable.

    src/H5Z.c: condition a variable declaration on H5_NO_DEPRECATED_SYMBOLS
            so that it's not declared but unused or vice versa.

    test/cache_common.h: add an #include in to get some symbols we need to
            avoid implicit declaration warnings.

    test/dsets.c: use a more conventional conditional-compilation syntax.

    test/dt_arith.c, test/fillval.c: initialize a bunch of uninitialized
            variables before use.

    test/vfd.c: pass the expected type of `void **` to posix_memalign(3)
            instead of `int **`.

    testpar/t_bigio.c: explicitly compare with 0 instead of using ! when
            "equal to 0?" is the question not "is false?"  Repair some
            indentation while I'm here.

    testpar/testpar.h: repair misaligned line-continuation backslashes in a
            macro that probably should be a function so that we don't have
            to fiddle with the line continuation to begin with.

    tools/src/h5repack/h5repack_main.c: fix some compiler fussing about
            enums.

    tools/test/perform/pio_engine.c: the compiler fusses if you cast a
            function call returning double directly to off_t.  It's ok if
            you cast a variable that's a double to off_t, however.  Write
            and use a new function, sqrto(), to avoid the cast warnings.

commit 43a4b80b21c0329fbc1f9a0e2854795189f0bb50
Author: David Young <dyoung@hdfgroup.org>
Date:   Wed Jan 29 10:47:30 2020 -0600

    Reduce casts of HDcalloc()/HDmalloc() that -Wc++-compat required.

    Reduce gratuitous casts---e.g., (size_t)1.

    Use the right format string for a pointer.

    In the H5C sanity checks, change a "size increase" variable from ssize_t
    (too narrow) to int64_t (wide enough).

    Parenthesize every appearance of `storage` in the macro
    `H5D_CHUNK_STORAGE_INDEX_CHK(storage)` so that you can pass in an
    expression like &sc and it works properly.

    Disallow re-assignment of the `dset` parameter to H5D__chunk_init()
    because it helped assure me that it's safe to replace the repeating
    expression `&dset->shared->layout.storage.u.chunk` with `sc` throughout.

    Replace lengthy expressions such as
    `&dset->shared->layout.storage.u.chunk` with `sc` throughout several
    functions in H5Dchunk.c ISTR that the compiler warned that `sc` was
    declared but unused in a couple of functions, and then I found that `sc`
    could be used in many places.  Maybe the disused `sc` appeared because a
    bunch of code was copied and pasted, I don't know.  Anyway, it's a lot
    tighter code now that I use `sc`.

    In H5D__chunk_update_old_edge_chunks() and H5D__chunk_delete()
    I actually expand `sc` and another temporary variable, `pline`,
    because they're used only in !defined(NDEBUG) code.  This squashes
    unused-variable warnings in the defined(NDEBUG) configuration.

    Don't drop the `volatile` qualification with a cast in
    tools/src/h5import/h5import.c.

commit 035bfa0769a4012881fc659b673bacf44d146537
Author: David Young <dyoung@hdfgroup.org>
Date:   Tue Jan 28 20:35:28 2020 -0600

    Reduce differences between my -Werror branch and `develop`:

    Rename index -> idx, fileno -> fnumber, fileno -> fno to avoid GCC
    shadowed declaration warnings about index(3).

    Convert #pragma GCC diagnostic push/pop/ignored to the HDF5 library's
    H5_GCC_DIAG_OFF()/H5_GCC_DIAG_ON() macros.
2020-01-31 13:53:26 -06:00
Dana Robinson
a98747c0f9 Added an H5MM_memcpy call that checks for buffer overlap. 2019-03-16 08:06:52 -07:00
Jordan Henderson
65a820ae89 Fix some collective metadata read issues 2019-02-11 18:31:23 -06:00
Quincey Koziol
8939a2190f Add info_to_str and str_to_info "management" callbacks for serializing and
deserializing a connector's info object.
2018-11-21 00:56:13 -06:00
Quincey Koziol
0df6e44a6e Squashed commit of private branch changes to support stackable VOL plugins.
modified:   test/dsets.c
2018-10-24 23:52:47 -05:00
Dana Robinson
b48686febd Normalization with vol_integration (misc internal and datatype) 2018-09-20 13:38:40 -07:00
Dana Robinson
680cf4d946 Removed 'VOL' versions of FUNC_ENTER macros as well as empty functions
orginally intended to support the full SWMR feature.
2018-09-18 14:10:14 -07:00
Quincey Koziol
01f196b31a Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into merge_hyperslab_updates 2018-04-29 03:04:21 -05:00
Quincey Koziol
d812c6fe60 Cleanup API context function usage. 2018-03-18 22:51:19 -05:00
Quincey Koziol
4a17aff408 Add API context interface and use it throughout the library. 2018-03-15 16:54:30 -05:00
Dana Robinson
22e58124ec Made a dcpl layout struct in H5Z.c dynamic to quiet a stack size warning. 2017-11-21 13:20:33 -08:00
Dana Robinson
20bb11b526 Fixed an uninitialized filter callback struct in H5Dchunk.c and
unified the naming and initialization of said struct throughout
the library. This was causing a crash on VS2015 in debug mode
when the debug heap complained. Fixes HDFFV-10330.
2017-11-21 10:38:15 -08:00
Dana Robinson
3b17287368 Brings H5Z and H5PL packages in sync with VOL integration branch. 2017-11-17 15:21:49 -08:00
Allen Byrne
bb3fb6f134 HDFFV-10328 - fix typos 2017-11-17 14:20:14 -06:00
Allen Byrne
9599e55176 HDFFV-10328 - remove allocation changes 2017-11-17 13:59:57 -06:00
Allen Byrne
9f1cd84c15 HDFFV-10328 merge allocation changes from 1.8 2017-11-16 11:45:36 -06:00
Allen Byrne
c577a5e995 HDFFV-10297 update calls to H5Zfilter_avail 2017-10-09 17:00:15 -05:00
Allen Byrne
a07d6b52fb HDFFV-10297 - fix repack individual objects
includes H5Zfilter_avail() fix
2017-10-06 14:36:07 -05:00
Allen Byrne
865b258493 Whitespace conversions and comment updates 2017-10-04 08:53:45 -05:00
Dana Robinson
005bf26ff8 Revert "Merge pull request #567 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop"
This reverts commit 4242753848, reversing
changes made to b0e79fe6dd.
2017-06-09 18:09:08 -04:00
Dana Robinson
d391d8a690 * Made STATIC free lists EXTERN for H5O_layout_t.
* Made all non-global instances of H5O_layout_t in H5Pdcpl.c dynamic.
2017-06-07 18:10:48 -04:00
Dana Robinson
390b5a9feb Updated H5O_layout_t dynamic work to use the H5FL interface. 2017-06-07 13:38:27 -04:00
Dana Robinson
1ccb1b3c1f Made some H5O_layout_t stack allocations dynamic (quiets warnings). 2017-06-06 14:07:09 -04:00
Larry Knox
89fbe00dec Merge pull request #426 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:hdf5_1_10 to hdf5_1_10
* commit '54957d37f5aa73912763dbb6e308555e863c43f4':
  Commit copyright header change for src/H5PLpkg.c which was added after running script to make changes.
  Add new files in release_docs to MANIFEST. Cimmit changes to Makefile.in(s) and H5PL.c that resulted from running autogen.sh.
  Merge pull request #407 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:hdf5_1_10_1 to hdf5_1_10_1
  Change copyright headers to replace url referring to file to be removed and replace it with new url for COPYING file.
2017-04-25 16:05:36 -05:00
Quincey Koziol
8859a5a270 Checkpoint normalization against incoming hyperslab / selection / dataspace
improvements.
2017-03-27 20:25:06 -07:00
Quincey Koziol
4fad103187 Bring changes to I/O parameters from page_buffering branch. 2017-03-13 08:21:28 -07:00
Mohamad Chaarawi
63c90e5c67 [svn-r29081] - merge in the phdf5_metadata_opt/ branch with the collective metadata optimizations.
- rename H5AC_dxpl_id to H5AC_ind_read_dxpl_id and update all usage in the library

tested on bb-8 with parallel and serial.
2016-02-10 15:48:34 -05:00
Quincey Koziol
ee7612be44 [svn-r27811] Description:
Refactor property list code to "deep copy" properties in the correct way,
retraining the rest of the library to copy & release things correctly.  This
cleans up another batch of memory leaks, etc. within the library.

Tested on:
    MacOSX/64 10.10.5 (amazon) w/serial & parallel
    Linux/32 2.6.x (jam) w/serial & parallel
    (h5committest forthcoming)
2015-09-16 17:27:49 -05:00
Quincey Koziol
1023374492 [svn-r27768] Description:
Complete revamp of package initialization/shutdown mechanism in the library.
Each package now has a single init/term routine.

    This new way should avoid packages being re-initialized during library
shutdown and is also be _much_ more proactive about giving feedback for
resource leaks internal to the library.

    Introduces a new "module" header file for packages in the library
(e.g src/H5Fmodule.h) which sets up some necessary package configuration macros
for the FUNC_ENTER/LEAVE macros.  (The VFL drivers have their own slightly
modified version of this header, src/H5FDdrvr_module.h)

    Also cleaned up a bunch of resources leaks all across the library and tests,
along with addressing many warnings, as I encountered them.

Tested on:
    MacOSX/64 10.10.5 (amazon) w/serial & parallel
    Linux/64 3.10.x (kituo) w/serial & parallel
    Linux/64 2.6.x (ostrich) w/serial
2015-09-13 22:58:59 -05:00
Mohamad Chaarawi
fc45d5fcb0 [svn-r27133] - Add a new attribute function characterstic for format:
* H5_ATTR_FORMAT(X,Y,Z)  __attribute__((format(X, Y, Z)))
- Rename UNUSED attribute characterstic to H5_ATTR_UNUSED.
- Rename NORETURN attribute characterstic to H5_ATTR_NORETURN

tested with h5committest.
2015-06-01 14:38:09 -05:00
Dana Robinson
7462a7ef1c [svn-r26329] Merge of r26069, r26070, and r26072 from the features/autotools_rework
branch.

Removed the configure option that allows selective disabling of individual
internal filters (fletcher32, shuffle, etc.).

This feature mucked up the code with a lot of #ifdefs, saved very little space,
and was not scalable to a general scheme for library size reduction. We've
decided to remove the feature while we investigate a more general scheme for
decreasing the library size.

Part of: HDFFV-9086

Tested on: h5committest
2015-02-27 07:50:38 -05:00
Quincey Koziol
89e2c8822d [svn-r25766] Description:
Revert r25273, 25283 & 25439 (the hyperslab improvement changes).  They
are buggy and it's taking me a long time to correct the problem.  I'll check
in a revised form of the changes when I've got them straightened out.

Tested on:
    Mac OSX 10.10.0 (amazon) w/gcc 4.9.x, C++, FORTRAN
    Linux 2.6.x (jam) w/parallel
2014-11-03 15:13:25 -05:00
Quincey Koziol
33ea1ada24 [svn-r25496] Description:
Merge 64-bit ID changes from branch to trunk.  (Plus a few minor cleanups
that aren't on the branch)

Tested on:
    Mac OSX/64 10.9.4 (amazon) w/C++ & FORTRAN
    (h5committested on branch already for a week)
2014-07-30 15:55:14 -05:00
Quincey Koziol
4ccb865c70 [svn-r25273] Description:
Bring in Chao/Neil/my changes to optimize hyperslab selection operations
further, along with 3 new public API routines: H5Scombine_hyperslab(),
H5Sselect_select() and H5Scombine_select(), along with many minor cleanups to
the code and fixing a few compiler warnings.

Tested on:
    Mac OSX/64 10.9.3 w/gcc 4.9.x and parallel w/OpenMPI
    (h5commttest forthcoming)
2014-06-13 01:23:57 -05:00
Allen Byrne
b30e37ea78 [svn-r24725] HDFFV-8629: h5repack will not attempt to remove UD filters. h5repack requires a check for UD filters that also must check if the filter can be dynamically loaded. This require a change in the library that checks for this.
Tested: locally and reviewed
2014-02-20 15:21:08 -05:00
Allen Byrne
0653325f0d [svn-r24167] HDFFV-8513, HDFFV-8522 Plugin testing in h5repack, h5dump.
Add more usage info for UserMacros.
Add new option information about the Plugin default path.

Tested: local linux, jam
2013-09-19 11:38:08 -05:00
Quincey Koziol
424a41f878 [svn-r23713] Description:
Clean up warnings, switch library code to use Standard C/POSIX wrapper
macros, remove internal calls to API routines, update checkapi and checkposix
scripts.

Tested on:
    Mac OSX/64 10.8.3 (amazon) w/C++ & FORTRAN
    Big-Endian Linux/64 (ostrich)
2013-05-21 12:30:54 -05:00
Raymond Lu
90ccb5c3c3 [svn-r23685] Issue 8380 H5Zunregister caused seg fault. I simplied the iteration process over datasets, groups, and files as Quincey suggested. I also removed H5I_search that I introduced in last commit but didn't actually used it.
Tested on jam and koala - simple change.
2013-05-08 11:36:58 -05:00
Raymond Lu
8ec42ced80 [svn-r23675] Issue 8380 - H5Zunregister caused seg fault. This is the followup commit. Quincey
reviewed my previous commit and suggested me to use H5I_iterate to iterate through
all opened objects in H5Z_unregister.  I changed it in this commit.

Tested with h5committest.
2013-05-06 15:51:26 -05:00
Raymond Lu
bada3f7a86 [svn-r23656] Issue 8380 H5Zunregister caused seg fault: I added some protection measures:
1. If any opened object uses the filter, let it fail.
  2. Flush all opened files to push any cached data to files.

Tested with h5committest.
2013-04-29 14:23:04 -05:00
Quincey Koziol
8277409a9b [svn-r23549] Description:
More misc. cleanups, but main change is to make an "extern" header file
for the plugin interface.

Tested on:
    Mac OSX/64 10.8.3 (amazon)
2013-04-04 15:57:59 -05:00
Quincey Koziol
9ab7c47000 [svn-r23543] Description:
Bring r23542 from desy_1_8 branch to trunk:

    Further revisions to dynamic library loading code, to clean it up.

Tested on:
    Mac OSX/64 10.8.3 (amazon) w/parallel
2013-04-04 08:29:14 -05:00
Raymond Lu
8ffd55478e [svn-r23432] I added a new macro HDF5_PLUGIN_PRELOAD to skip plugin loading during data reading.
Tested on koala and jam.
2013-03-22 16:39:53 -05:00
Quincey Koziol
af9a3abb3d [svn-r23380] Description:
Review & cleanup code.
2013-03-18 23:22:34 -05:00
Raymond Lu
55822485c6 [svn-r23346] First commit for DESY project. It has the basic functionality of loading dynamically filter libraries and a simple test for it.
Tested on koala.
2013-03-13 14:35:26 -05:00
Quincey Koziol
9c9ee2008c [svn-r21919] Description:
Refactor function name macros and simplify the FUNC_ENTER macros, to clear
away the cruft and prepare for further cleanups.

Tested on:
    Mac OSX/64 10.7.3 (amazon) w/debug, production & parallel
2012-02-08 22:13:27 -05:00
Raymond Lu
5479ee3b0c [svn-r20946] Issue 4278 - When reading data fails, the error message should say which filter isn't registered. This is the follow-up commit. In my first checkin, I took out the line "H5Z_SZIP->encoder_present = SZ_encoder_enabled()" by
mistake.  It caused SZIP test to fail.  I'm puting it back now.

Tested on jam - simple change.
2011-06-07 14:17:11 -05:00
Raymond Lu
4bffd76b3c [svn-r20929] Issue 4278 - When reading data fails, the error message should say which filter isn't registered. The fix is simple. Most of the effort is on the test. The file with filter enabled is created in gen_filter.c. The verification of the error message is in test_error.c. The output is compared against the standard output.
Tested on jam, koala, and heiwa.
2011-06-03 10:58:49 -05:00