Tue, 15 May 2012 09:49:18 -0700
7168294: G1: Some Full GCs incorrectly report GC cause as "No GC"
Summary: GC cause was not being set by the VM_G1CollectForAllocation VM operation.
Reviewed-by: jmasa, ysr, brutisso
src/share/vm/gc_implementation/g1/vm_operations_g1.cpp | file | annotate | diff | comparison | revisions |
1.1 --- a/src/share/vm/gc_implementation/g1/vm_operations_g1.cpp Mon May 14 21:07:28 2012 -0700 1.2 +++ b/src/share/vm/gc_implementation/g1/vm_operations_g1.cpp Tue May 15 09:49:18 2012 -0700 1.3 @@ -42,6 +42,7 @@ 1.4 1.5 void VM_G1CollectForAllocation::doit() { 1.6 G1CollectedHeap* g1h = G1CollectedHeap::heap(); 1.7 + GCCauseSetter x(g1h, _gc_cause); 1.8 _result = g1h->satisfy_failed_allocation(_word_size, &_pause_succeeded); 1.9 assert(_result == NULL || _pause_succeeded, 1.10 "if we get back a result, the pause should have succeeded");