Mercurial > hg > graal-compiler
comparison src/share/vm/gc_implementation/g1/vm_operations_g1.cpp @ 6062:1096fc5a52eb
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
author | johnc |
---|---|
date | Tue, 15 May 2012 09:49:18 -0700 |
parents | 5c86f8211d1e |
children | 37552638d24a |
comparison
equal
deleted
inserted
replaced
6061:33e366609904 | 6062:1096fc5a52eb |
---|---|
40 guarantee(word_size > 0, "an allocation should always be requested"); | 40 guarantee(word_size > 0, "an allocation should always be requested"); |
41 } | 41 } |
42 | 42 |
43 void VM_G1CollectForAllocation::doit() { | 43 void VM_G1CollectForAllocation::doit() { |
44 G1CollectedHeap* g1h = G1CollectedHeap::heap(); | 44 G1CollectedHeap* g1h = G1CollectedHeap::heap(); |
45 GCCauseSetter x(g1h, _gc_cause); | |
45 _result = g1h->satisfy_failed_allocation(_word_size, &_pause_succeeded); | 46 _result = g1h->satisfy_failed_allocation(_word_size, &_pause_succeeded); |
46 assert(_result == NULL || _pause_succeeded, | 47 assert(_result == NULL || _pause_succeeded, |
47 "if we get back a result, the pause should have succeeded"); | 48 "if we get back a result, the pause should have succeeded"); |
48 } | 49 } |
49 | 50 |