summaryrefslogtreecommitdiffstats
path: root/src/H5C2private.h
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2008-06-09 21:58:27 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2008-06-09 21:58:27 (GMT)
commitd0acd2431f5151d25e32d67667cda93587dc33e4 (patch)
treec95693a891b54562f389faede5c9da847332e372 /src/H5C2private.h
parent32f3fe6586828a0a04263bb34464b6ea0057900b (diff)
downloadhdf5-d0acd2431f5151d25e32d67667cda93587dc33e4.zip
hdf5-d0acd2431f5151d25e32d67667cda93587dc33e4.tar.gz
hdf5-d0acd2431f5151d25e32d67667cda93587dc33e4.tar.bz2
[svn-r15185] Description:
Added a pointer to the cache that an entry is contained within to the cache entry structure. This allows us to remove the file pointer from some of the H5AC2 calls, easing the conversion of some of the cache clients (the free space section info and fractal heap direct blocks, and probably others). Removed file pointer from the H5AC2_unpin_entry() call. Tested on: FreeBSD/32 6.2 (duty) in debug mode FreeBSD/64 6.2 (liberty) w/C++ & FORTRAN, in debug mode Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-amd64 2.6 (smirom) w/default API=1.6.x, w/C++ & FORTRAN, in production mode Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN, in production mode Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN, w/szip filter, in production mode Mac OS X/32 10.5.2 (amazon) in debug mode Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
Diffstat (limited to 'src/H5C2private.h')
-rw-r--r--src/H5C2private.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/H5C2private.h b/src/H5C2private.h
index a7b421c..20111df 100644
--- a/src/H5C2private.h
+++ b/src/H5C2private.h
@@ -550,6 +550,8 @@ typedef herr_t (*H5C2_log_flush_func_t)(H5C2_t * cache_ptr,
* detect this case, and re-start its scan from the bottom
* of the LRU when this situation occurs.
*
+ * cache_ptr: Pointer to the cache that this entry is contained within.
+ *
* addr: Base address of the cache entry on disk.
*
* size: Length of the cache entry on disk. Note that unlike normal
@@ -849,6 +851,7 @@ typedef struct H5C2_cache_entry_t
#ifndef NDEBUG
uint32_t magic;
#endif /* NDEBUG */
+ H5C2_t * cache_ptr;
haddr_t addr;
size_t size;
void * image_ptr;
@@ -1373,8 +1376,10 @@ H5_DLL herr_t H5C2_get_entry_status(H5F_t * f,
H5_DLL herr_t H5C2_get_evictions_enabled(H5C2_t * cache_ptr,
hbool_t * evictions_enabled_ptr);
-H5_DLL herr_t H5C2_get_trace_file_ptr(H5C2_t * cache_ptr,
+H5_DLL herr_t H5C2_get_trace_file_ptr(const H5C2_t * cache_ptr,
FILE ** trace_file_ptr_ptr);
+H5_DLL herr_t H5C2_get_trace_file_ptr_from_entry(const H5C2_cache_entry_t *entry_ptr,
+ FILE ** trace_file_ptr_ptr);
H5_DLL herr_t H5C2_insert_entry(H5F_t * f,
hid_t dxpl_id,
@@ -1440,7 +1445,7 @@ H5_DLL herr_t H5C2_stats(H5C2_t * cache_ptr,
H5_DLL void H5C2_stats__reset(H5C2_t * cache_ptr);
-H5_DLL herr_t H5C2_unpin_entry(H5F_t * file_ptr, void * thing);
+H5_DLL herr_t H5C2_unpin_entry(void * thing);
H5_DLL herr_t H5C2_unprotect(H5F_t * f,
hid_t dxpl_id,