comparison src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp @ 4781:bacb651cf5bf

7113006: G1: excessive ergo output when an evac failure happens Summary: Introduce a flag that is set when a heap expansion attempt during a GC fails so that we do not consantly attempt to expand the heap when it's going to fail anyway. This not only prevents the excessive ergo output (which is generated when a region allocation fails) but also avoids excessive and ultimately unsuccessful expansion attempts. Reviewed-by: jmasa, johnc
author tonyp
date Thu, 05 Jan 2012 05:54:01 -0500
parents 441e946dc1af
children 023652e49ac0
comparison
equal deleted inserted replaced
4747:4753e3dda3c8 4781:bacb651cf5bf
282 OldGCAllocRegion _old_gc_alloc_region; 282 OldGCAllocRegion _old_gc_alloc_region;
283 283
284 // The last old region we allocated to during the last GC. 284 // The last old region we allocated to during the last GC.
285 // Typically, it is not full so we should re-use it during the next GC. 285 // Typically, it is not full so we should re-use it during the next GC.
286 HeapRegion* _retained_old_gc_alloc_region; 286 HeapRegion* _retained_old_gc_alloc_region;
287
288 // It specifies whether we should attempt to expand the heap after a
289 // region allocation failure. If heap expansion fails we set this to
290 // false so that we don't re-attempt the heap expansion (it's likely
291 // that subsequent expansion attempts will also fail if one fails).
292 // Currently, it is only consulted during GC and it's reset at the
293 // start of each GC.
294 bool _expand_heap_after_alloc_failure;
287 295
288 // It resets the mutator alloc region before new allocations can take place. 296 // It resets the mutator alloc region before new allocations can take place.
289 void init_mutator_alloc_region(); 297 void init_mutator_alloc_region();
290 298
291 // It releases the mutator alloc region. 299 // It releases the mutator alloc region.