summaryrefslogtreecommitdiffstats
path: root/src/H5CS.c
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r27768] Description:Quincey Koziol2015-09-141-82/+85
| | | | | | | | | | | | | | | | | | | | | | 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
* [svn-r24961] Updates to Win32 thread-local storage cleanup when the ↵Dana Robinson2014-04-041-3/+7
| | | | | | | | | | | thread-safe library is built on Windows. Previously, thread-local storage was not cleaned up, causing resource leaks. Fixes HDFFV-8518, HDFFV-8699 As a part of these changes, the thread-safe + static library options are declared unsupported since the solution relies on DllMain. A solution for the static library is probably doable, but requires much more complicated surgery and has been deferred to HDF5 1.8.14. Tested on: 64-bit Windows 7 using VS 2012 (changes only affect Windows)
* [svn-r23713] Description:Quincey Koziol2013-05-211-7/+7
| | | | | | | | | | 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)
* [svn-r21919] Description:Quincey Koziol2012-02-091-7/+7
| | | | | | | | 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
* [svn-r19367] Purpose:Mike McGreevy2010-09-101-2/+2
| | | | | | | | | | | | | | | | | | | Add windows threads support to HDF5. Description: Added calls to the windows threads library to the H5TS layer, and wrapped most calls to either pthreads or windows threads library with portable H5TS-style defines. Modified tests to use portable function definitions as well. This can be configured via CMake with the HDF5_ENABLE_THREADSAFE option, and should work on windows vista and later operating systems. Tested: h5committest, plus threadsafe with pthreads on jam and amani, and tested on a Windows Vista VM with threadsafe using windows threads.
* [svn-r15165] Purpose: Create new HDpthread_self and HDpthread_self_ulong macrosScott Wegner2008-06-061-1/+1
| | | | | | | | | Description: On Windows, the pthread_self function cannot be used to print the returned thread ID for debugging. Instead, we need a separate function, GetCurrentThreadId. To eliminate some Windows ifdef's in the code, we create two new function macros which can be used by all platforms. It is conditionally defined in H5win32defs.h, and globally in H5private.h. Tested: VS2005 w/ pthreads on WinXP kagiso w/ pthreads
* [svn-r13253] Updated all C and C++ style source code files with the THG ↵Albert Cheng2007-02-071-2/+3
| | | | | | | | | copyright notice. Tested platform: Kagiso only since it is only a comment block change. If it works in one machine, it should work in all, I hope. Still need to check the parallel build on copper.
* [svn-r12440] Purpose:Quincey Koziol2006-06-271-4/+4
| | | | | | | | | | | Code cleanup Description: Trim trailing whitespace in Makefile.am and C/C++ source files to make diffing changes easier. Platforms tested: None necessary, whitespace only change
* [svn-r12320] Purpose:Quincey Koziol2006-05-021-49/+50
| | | | | | | | | | code cleanup Description: Finish H5FS->H5CS internal API name changes... Platforms tested: FreeBSD 4.11 (sleipnir) w/ & w/o --enable-codestack
* [svn-r11733] Purpose:Quincey Koziol2005-11-161-1/+9
| | | | | | | | | | | | | | | | | | Code cleanup Description: Added some comments about the thread-specific memory for the error and function stacks. Changed H5close() to not use the function stack (since it causes it to be re-enabled after shutting it down) Changed thread-safe semaphore code to not use dynamicly allocated memory. Platforms tested: FreeBSD 4.11 (sleipnir) Linux 2.4 Too minor to require h5committest
* [svn-r11402] Purpose: MaintenanceElena Pourmal2005-09-131-1/+1
| | | | | | | | | | | | Description: Compiler complained about const type * variables that were used in the functions that require "non const" parameters. Compilation failed. Solution: Use casting to avoid compilation errors. Platforms tested: SX-6, heping and mir with new g95 Misc. update:
* [svn-r11282] Purpose:Quincey Koziol2005-08-201-9/+108
| | | | | | | | | | | | | | | | | New debugging feature Description: Add some code to track where memory from the internal free list allocator is allocated within the library. It's not quite ready for "prime time" yet, but it's close enough to be useful. This is disabled by default and requires the H5FL_TRACK macro in src/H5FLprivate.h to be uncommented to activate during debugging. Platforms tested: FreeBSD 4.11 (sleipnir) Linux 2.4 Too minor to require full h5committest
* [svn-r11245] Purpose:Quincey Koziol2005-08-131-8/+8
| | | | | | | | | | | | | | | | | | | | Code cleanup Description: Trim trailing whitespace, which is making 'diff'ing the two branches difficult. Solution: Ran this script in each directory: foreach f (*.[ch] *.cpp) sed 's/[[:blank:]]*$//' $f > sed.out && mv sed.out $f end Platforms tested: FreeBSD 4.11 (sleipnir) Too minor to require h5committest
* [svn-r9857] Purpose: MaintenanceElena Pourmal2005-01-221-3/+0
| | | | | | | | | | | | | | Description: Removed PABLO from the source Solution: Platforms tested: arabica with 64-bit, copper with parallel, heping with GNU C and C++ and PGI fortran (but I disabled hl, there is some weird problem only on heping: F9XMODFLAG is not propagated to the Makefile files Misc. update:
* [svn-r9761] Purpose:Albert Cheng2005-01-061-0/+1
| | | | | | | | | | | | | | | | Bug fix. Description: threadsafe test (ttsafe) would seg-fault if --disable-production --enable-debug mode is used. Reason was that the fstack.nused field was not initialized when created. Solution: Init new fstack.nused with 0. Platforms tested: Tested in mir, using development/debug mode. Did not "h5committested" as change is trivial and limited to threadsafe mode.
* [svn-r9727] Purpose:Quincey Koziol2004-12-291-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug Fix/Code Cleanup/Doc Cleanup/Optimization/Branch Sync :-) Description: Generally speaking, this is the "signed->unsigned" change to selections. However, in the process of merging code back, things got stickier and stickier until I ended up doing a big "sync the two branches up" operation. So... I brought back all the "infrastructure" fixes from the development branch to the release branch (which I think were actually making some improvement in performance) as well as fixed several bugs which had been fixed in one branch, but not the other. I've also tagged the repository before making this checkin with the label "before_signed_unsigned_changes". Platforms tested: FreeBSD 4.10 (sleipnir) w/parallel & fphdf5 FreeBSD 4.10 (sleipnir) w/threadsafe FreeBSD 4.10 (sleipnir) w/backward compatibility Solaris 2.7 (arabica) w/"purify options" Solaris 2.8 (sol) w/FORTRAN & C++ AIX 5.x (copper) w/parallel & FORTRAN IRIX64 6.5 (modi4) w/FORTRAN Linux 2.4 (heping) w/FORTRAN & C++ Misc. update:
* [svn-r8731] Purpose:Quincey Koziol2004-06-231-7/+4
| | | | | | | | | | | | | | | Code cleanup & minor optimization Description: Re-work the way interface initialization routines are specified in the library to avoid the overhead of checking for them in routines where there is no interface initialization routine. This cleans up warnings with gcc 3.4, reduces the library binary size a bit (about 2-3%) and should speedup the library's execution slightly. Platforms tested: FreeBSD 4.10 (sleipnir) w/gcc34 h5committest
* [svn-r7845] Purpose:Quincey Koziol2003-11-131-2/+1
| | | | | | | | | | | | | | | | Bug fix. Description: The new routines added for H5MM_[m|c]alloc were causing the function stack code to infinitely recurse while allocating room for the thread-specific information (when thread-safety was turned on). Solution: Call HDmalloc directly instead of H5MM_malloc Platforms tested: FreeBSD 4.9 (sleipnir) Changed are not tested in h5committest
* [svn-r7301] Purpose:Quincey Koziol2003-08-081-2/+0
| | | | | | | | | | Code cleanup Description: Remove comments and redundant code. Platforms tested: h5committested
* [svn-r7265] *** empty log message ***Raymond Lu2003-07-261-1/+3
|
* [svn-r6431] Purpose:Quincey Koziol2003-02-241-6/+0
| | | | | | | Comment cleanup Description: Corrected comment information.
* [svn-r6383] Purpose:Quincey Koziol2003-02-071-0/+223
New feature for developers. Description: Added "function stack" tracing to library. This allows developers (there is no public API) to call H5FS_print within the library and get a listing of the functions traversed to reach that point in the library. Eventually, I may add support for reporting the parameters to each function also... Mainly for debugging parallel I/O programs, but I think it will come in handy in other cases also. The function stack tracking is controlled with a configure switch: --enable-funcstack, which defaults to enabled currently. When we branch for 1.6, we should change the default setting on the branch to be disabled. Also, added a destructor to the thread-specific keys when thread-safety is turned on in the library. Otherwise, they were leaking memory and causing difficult to debug errors in threaded programs (like the test/ttsafe test). Platforms tested: Tested h5committest {arabica (fortran), eirene (fortran, C++) modi4 (parallel, fortran)} FreeBSD 4.7 (sleipnir) w/thread-safety enabled. Misc. update: Updated MANIFEST with new files added (src/H5FS.c & src/H5FDprivate.h) Update release_docs/RELEASE with thread-safety bug fix.