Request for reviews (M): 7008325: CodeCache exhausted on sparc starting from hs20b04
christian.thalinger at oracle.com
Thu Dec 23 03:52:56 PST 2010
7008325: CodeCache exhausted on sparc starting from hs20b04
The bug is that Compile::ScheduleAndBundle calls
init_scratch_buffer_blob and later clear_scratch_buffer_blob to reset
_scratch_buffer_blob and _scratch_locs_memory (setting to NULL). But
the CompilerWrapper destructor only frees the _scratch_buffer_blob if
it's non-null resulting in a CodeCache memory leak.
The fix is to remove clear_scratch_buffer_blob completely and let
init_scratch_buffer_blob free and allocate a new blob if required.
Additionally I added some code that prints the largest free block in
CodeCache::print_bounds (as found in the hs_err file).
More information about the hotspot-compiler-dev