diff options
Diffstat (limited to 'src/H5C2.c')
-rw-r--r-- | src/H5C2.c | 196 |
1 files changed, 195 insertions, 1 deletions
@@ -113,6 +113,26 @@ /* + * #defines controlling debugging code. All should be turned off + * before checkin. + */ + +#define H5C2_PRINT_ENTRY_POINTS FALSE + +#if H5C2_PRINT_ENTRY_POINTS +#define H5C2_PRINT_EXIT_POINTS TRUE +#define H5C2_PRINT_ENTRY_POINT_TARGET_TYPE(i) \ + ( ( (i) == H5AC2_FHEAP_HDR_ID ) || \ + ( (i) == H5AC2_FHEAP_DBLOCK_ID ) || \ + ( (i) == H5AC2_FHEAP_IBLOCK_ID ) ) +#else /* H5C2_PRINT_ENTRY_POINTS */ +#define H5C2_PRINT_EXIT_POINTS FALSE +#endif /* H5C2_PRINT_ENTRY_POINTS */ + + + + +/* * Private file-scope variables. */ @@ -212,6 +232,7 @@ static void * H5C2_epoch_marker_deserialize(haddr_t addr, static herr_t H5C2_epoch_marker_image_len(const void * thing, size_t *image_len_ptr); static herr_t H5C2_epoch_marker_serialize(const H5F_t *f, + hid_t dxpl_id, haddr_t addr, size_t len, void * image_ptr, @@ -284,6 +305,7 @@ done: static herr_t H5C2_epoch_marker_serialize(const H5F_t UNUSED *f, + hid_t UNUSED dxpl_id, haddr_t UNUSED addr, size_t UNUSED len, void UNUSED * image_ptr, @@ -1108,6 +1130,14 @@ H5C2_expunge_entry(H5F_t * f, FUNC_ENTER_NOAPI(H5C2_expunge_entry, FAIL) +#if H5C2_PRINT_ENTRY_POINTS + if ( H5C2_PRINT_ENTRY_POINT_TARGET_TYPE(type->id) ) + { + HDfprintf(stdout, "%s: addr = 0x%lX, type = %s.\n", + FUNC, (unsigned long)addr, type->name); + } +#endif /* H5C2_PRINT_ENTRY_POINTS */ + HDassert( f ); HDassert( f->shared ); @@ -1207,6 +1237,13 @@ done: } #endif /* H5C2_DO_EXTREME_SANITY_CHECKS */ +#if H5C2_PRINT_EXIT_POINTS + if ( H5C2_PRINT_ENTRY_POINT_TARGET_TYPE(type->id) ) { + HDfprintf(stdout, "%s: Exiting with result = %d.\n", + FUNC, (int)ret_value); + } +#endif /* H5C2_PRINT_EXIT_POINTS */ + FUNC_LEAVE_NOAPI(ret_value) } /* H5C2_expunge_entry() */ @@ -1358,6 +1395,10 @@ H5C2_flush_cache(const H5F_t *f, FUNC_ENTER_NOAPI(H5C2_flush_cache, FAIL) +#if H5C2_PRINT_ENTRY_POINTS + HDfprintf(stdout, "%s: flags = 0x%x.\n", FUNC, flags); +#endif /* H5C2_PRINT_ENTRY_POINTS */ + HDassert( f ); HDassert( f->shared ); @@ -1696,6 +1737,11 @@ done: cache_ptr->flush_in_progress = FALSE; +#if H5C2_PRINT_EXIT_POINTS + HDfprintf(stdout, "%s: Exiting with result = %d.\n", + FUNC, (int)ret_value); +#endif /* H5C2_PRINT_EXIT_POINTS */ + FUNC_LEAVE_NOAPI(ret_value) } /* H5C2_flush_cache() */ @@ -2456,6 +2502,14 @@ H5C2_insert_entry(H5F_t * f, FUNC_ENTER_NOAPI(H5C2_insert_entry, FAIL) +#if H5C2_PRINT_ENTRY_POINTS + if ( H5C2_PRINT_ENTRY_POINT_TARGET_TYPE(type->id) ) + { + HDfprintf(stdout, "%s: addr = 0x%lX, len = %d, type = %s.\n", FUNC, + (unsigned long)addr, (int)len, type->name); + } +#endif /* JRM */ + HDassert( f ); HDassert( f->shared ); @@ -2703,6 +2757,14 @@ done: } #endif /* H5C2_DO_EXTREME_SANITY_CHECKS */ +#if H5C2_PRINT_EXIT_POINTS + if ( H5C2_PRINT_ENTRY_POINT_TARGET_TYPE(type->id) ) { + HDfprintf(stdout, "%s: Exiting with result = %d.\n", + FUNC, (int)ret_value); + } +#endif /* H5C2_PRINT_EXIT_POINTS */ + + FUNC_LEAVE_NOAPI(ret_value) } /* H5C2_insert_entry() */ @@ -3097,6 +3159,17 @@ H5C2_mark_pinned_entry_dirty(void * thing, entry_ptr = (H5C2_cache_entry_t *)thing; + +#if H5C2_PRINT_ENTRY_POINTS + if ( H5C2_PRINT_ENTRY_POINT_TARGET_TYPE(entry_ptr->type->id) ) + { + HDfprintf(stdout, + "%s: addr = 0x%lX, size_changed = %d, new_size = %d.\n", + FUNC, (unsigned long)(entry_ptr->addr), (int)size_changed, + (int)new_size); + } +#endif /* JRM */ + if ( ! ( entry_ptr->is_pinned ) ) { HGOTO_ERROR(H5E_CACHE, H5E_CANTMARKDIRTY, FAIL, \ @@ -3188,6 +3261,13 @@ H5C2_mark_pinned_entry_dirty(void * thing, done: +#if H5C2_PRINT_EXIT_POINTS + if ( H5C2_PRINT_ENTRY_POINT_TARGET_TYPE(entry_ptr->type->id) ) { + HDfprintf(stdout, "%s: Exiting with result = %d.\n", + FUNC, (int)ret_value); + } +#endif /* H5C2_PRINT_EXIT_POINTS */ + FUNC_LEAVE_NOAPI(ret_value) } /* H5C2_mark_pinned_entry_dirty() */ @@ -3254,8 +3334,16 @@ H5C2_mark_pinned_or_protected_entry_dirty(void * thing) entry_ptr = (H5C2_cache_entry_t *)thing; +#if H5C2_PRINT_ENTRY_POINTS + if ( H5C2_PRINT_ENTRY_POINT_TARGET_TYPE(entry_ptr->type->id) ) + { + HDfprintf(stdout, "%s: addr = 0x%lX, type = %s.\n", FUNC, + (unsigned long)(entry_ptr->addr), entry_ptr->type->name); + } +#endif /* JRM */ + if ( entry_ptr->is_protected ) { -#if 1 /* JRM - uncomment this when possible */ +#if 0 /* JRM - uncomment this when possible */ HDassert( ! ((entry_ptr)->is_read_only) ); #endif /* set the dirtied flag */ @@ -3292,6 +3380,13 @@ H5C2_mark_pinned_or_protected_entry_dirty(void * thing) done: +#if H5C2_PRINT_EXIT_POINTS + if ( H5C2_PRINT_ENTRY_POINT_TARGET_TYPE(entry_ptr->type->id) ) { + HDfprintf(stdout, "%s: Exiting with result = %d.\n", + FUNC, (int)ret_value); + } +#endif /* H5C2_PRINT_EXIT_POINTS */ + FUNC_LEAVE_NOAPI(ret_value) } /* H5C2_mark_pinned_or_protected_entry_dirty() */ @@ -3371,6 +3466,15 @@ H5C2_rename_entry(H5C2_t * cache_ptr, FUNC_ENTER_NOAPI(H5C2_rename_entry, FAIL) +#if H5C2_PRINT_ENTRY_POINTS + if ( H5C2_PRINT_ENTRY_POINT_TARGET_TYPE(type->id) ) + { + HDfprintf(stdout, "%s: type = %s, old_addr = 0x%lX, new_addr = 0x%lx.\n", + FUNC, type->name, (unsigned long)old_addr, + (unsigned long)new_addr); + } +#endif /* JRM */ + HDassert( cache_ptr ); HDassert( cache_ptr->magic == H5C2__H5C2_T_MAGIC ); HDassert( type ); @@ -3533,6 +3637,13 @@ done: } #endif /* H5C2_DO_EXTREME_SANITY_CHECKS */ +#if H5C2_PRINT_EXIT_POINTS + if ( H5C2_PRINT_ENTRY_POINT_TARGET_TYPE(type->id) ) { + HDfprintf(stdout, "%s: Exiting with result = %d.\n", + FUNC, (int)ret_value); + } +#endif /* H5C2_PRINT_EXIT_POINTS */ + FUNC_LEAVE_NOAPI(ret_value) } /* H5C2_rename_entry() */ @@ -3580,6 +3691,15 @@ H5C2_resize_pinned_entry(void * thing, HDassert( entry_ptr ); HDassert( H5F_addr_defined(entry_ptr->addr) ); +#if H5C2_PRINT_ENTRY_POINTS + if ( H5C2_PRINT_ENTRY_POINT_TARGET_TYPE(entry_ptr->type->id) ) + { + HDfprintf(stdout, "%s: type = %s, addr = 0x%lX, new_size = %d.\n", + FUNC, entry_ptr->type->name, (unsigned long)(entry_ptr->addr), + (int)new_size); + } +#endif /* JRM */ + cache_ptr = entry_ptr->cache_ptr; HDassert( cache_ptr ); @@ -3688,6 +3808,13 @@ H5C2_resize_pinned_entry(void * thing, done: +#if H5C2_PRINT_EXIT_POINTS + if ( H5C2_PRINT_ENTRY_POINT_TARGET_TYPE(entry_ptr->type->id) ) { + HDfprintf(stdout, "%s: Exiting with result = %d.\n", + FUNC, (int)ret_value); + } +#endif /* H5C2_PRINT_EXIT_POINTS */ + FUNC_LEAVE_NOAPI(ret_value) } /* H5C2_resize_pinned_entry() */ @@ -3739,6 +3866,14 @@ H5C2_pin_protected_entry(void * thing) FUNC_ENTER_NOAPI(H5C2_pin_protected_entry, FAIL) +#if H5C2_PRINT_ENTRY_POINTS + if ( H5C2_PRINT_ENTRY_POINT_TARGET_TYPE(entry_ptr->type->id) ) + { + HDfprintf(stdout, "%s: addr = 0x%lX, type = %s.\n", FUNC, + (unsigned long)(entry_ptr->addr), entry_ptr->type->name); + } +#endif /* JRM */ + HDassert( entry_ptr ); HDassert( H5F_addr_defined(entry_ptr->addr) ); @@ -3763,6 +3898,13 @@ H5C2_pin_protected_entry(void * thing) done: +#if H5C2_PRINT_EXIT_POINTS + if ( H5C2_PRINT_ENTRY_POINT_TARGET_TYPE(entry_ptr->type->id) ) { + HDfprintf(stdout, "%s: Exiting with result = %d.\n", + FUNC, (int)ret_value); + } +#endif /* H5C2_PRINT_EXIT_POINTS */ + FUNC_LEAVE_NOAPI(ret_value) } /* H5C2_pin_protected_entry() */ @@ -3890,6 +4032,15 @@ H5C2_protect(H5F_t * f, FUNC_ENTER_NOAPI(H5C2_protect, NULL) +#if H5C2_PRINT_ENTRY_POINTS + if ( H5C2_PRINT_ENTRY_POINT_TARGET_TYPE(type->id) ) + { + HDfprintf(stdout, + "%s: addr = 0x%lX, len = %d, type = %s, flags = 0x%x.\n", + FUNC, (unsigned long)addr, (int)len, type->name, flags); + } +#endif /* JRM */ + /* check args */ HDassert( f ); HDassert( f->shared ); @@ -4229,6 +4380,13 @@ done: } #endif /* H5C2_DO_EXTREME_SANITY_CHECKS */ +#if H5C2_PRINT_EXIT_POINTS + if ( H5C2_PRINT_ENTRY_POINT_TARGET_TYPE(type->id) ) { + HDfprintf(stdout, "%s: Exiting with result = 0x%lX.\n", + FUNC, (unsigned long)ret_value); + } +#endif /* H5C2_PRINT_EXIT_POINTS */ + FUNC_LEAVE_NOAPI(ret_value) } /* H5C2_protect() */ @@ -5363,6 +5521,14 @@ H5C2_unpin_entry(void *_entry_ptr) FUNC_ENTER_NOAPI(H5C2_unpin_entry, FAIL) +#if H5C2_PRINT_ENTRY_POINTS + if ( H5C2_PRINT_ENTRY_POINT_TARGET_TYPE(entry_ptr->type->id) ) + { + HDfprintf(stdout, "%s: addr = 0x%lX, type = %s.\n", FUNC, + (unsigned long)(entry_ptr->addr), entry_ptr->type->name); + } +#endif /* JRM */ + HDassert( entry_ptr ); cache_ptr = entry_ptr->cache_ptr; @@ -5386,6 +5552,13 @@ H5C2_unpin_entry(void *_entry_ptr) done: +#if H5C2_PRINT_EXIT_POINTS + if ( H5C2_PRINT_ENTRY_POINT_TARGET_TYPE(entry_ptr->type->id) ) { + HDfprintf(stdout, "%s: Exiting with result = %d.\n", + FUNC, (int)ret_value); + } +#endif /* H5C2_PRINT_EXIT_POINTS */ + FUNC_LEAVE_NOAPI(ret_value) } /* H5C2_unpin_entry() */ @@ -5522,6 +5695,15 @@ H5C2_unprotect(H5F_t * f, FUNC_ENTER_NOAPI(H5C2_unprotect, FAIL) +#if H5C2_PRINT_ENTRY_POINTS + if ( H5C2_PRINT_ENTRY_POINT_TARGET_TYPE(type->id) ) + { + HDfprintf(stdout, + "%s: addr = 0x%lX, type = %s, flags = 0x%x, new_size = %d.\n", + FUNC, (unsigned long)addr, type->name, flags, (int)new_size); + } +#endif /* JRM */ + deleted = ( (flags & H5C2__DELETED_FLAG) != 0 ); dirtied = ( (flags & H5C2__DIRTIED_FLAG) != 0 ); set_flush_marker = ( (flags & H5C2__SET_FLUSH_MARKER_FLAG) != 0 ); @@ -5893,6 +6075,13 @@ done: } #endif /* H5C2_DO_EXTREME_SANITY_CHECKS */ +#if H5C2_PRINT_EXIT_POINTS + if ( H5C2_PRINT_ENTRY_POINT_TARGET_TYPE(type->id) ) { + HDfprintf(stdout, "%s: Exiting with result = %d.\n", + FUNC, (int)ret_value); + } +#endif /* H5C2_PRINT_EXIT_POINTS */ + FUNC_LEAVE_NOAPI(ret_value) } /* H5C2_unprotect() */ @@ -8567,6 +8756,7 @@ H5C2_flush_single_entry(const H5F_t * f, if ( ! ( entry_ptr->image_up_to_date ) ) { if ( entry_ptr->type->serialize(f, + dxpl_id, entry_ptr->addr, entry_ptr->size, entry_ptr->image_ptr, @@ -8824,6 +9014,10 @@ H5C2_flush_single_entry(const H5F_t * f, entry_ptr->magic = H5C2__H5C2_CACHE_ENTRY_T_BAD_MAGIC; #endif /* NDEBUG */ entry_ptr->cache_ptr = NULL; +#if 0 /* JRM */ + HDfprintf(stdout, "%s: calling free_icr(%d -- %s).\n", FUNC, + type_ptr->id, type_ptr->name); +#endif /* JRM */ if ( type_ptr->free_icr(entry_ptr->addr, entry_ptr->size, (void *)entry_ptr) != SUCCEED ) { |