Review Request (s) - 7015169 GC Cause not always set

Tony Printezis tony.printezis at
Fri Jan 28 14:11:52 UTC 2011


Can I suggest an alternative for the changes to the G1 VM operations?

VM_G1OperationWithAllocRequest is a super class for  
VM_G1CollectForAllocation and VM_G1IncCollectionPause. Instead of 
setting _cause to GCCause::_allocation_failure in the  
VM_G1OperationWithAllocRequest constructor, why don't you add a cause 
parameter to that constructor, propagate the cause field from the  
VM_G1IncCollectionPause constructor and pass 
GCCause::_allocation_failure from the VM_G1CollectForAllocation 
constructor? I'd prefer to force the subclasses to pass a cause to the 
constructor instead of setting a default value for all of them.


On 1/27/2011 7:00 AM, Bengt Rutisson wrote:
> Hi Everybody,
> Following up on a mail discussion called "jstat LGCC column shows" on 
> this mailing list. Yasumasa Suenaga has agreed to contribute the patch 
> that he made to the OpenJDK project. I am helping him to get it pushed 
> into the OpenJDK repositories.
> We created bug 7015169 for this issue. It is not available on 
> yet, but I hope it gets published there soon.
> To push we need a couple of reviews. Here is the webrev:
> The problem was that _gc_cause was not set by all VM_GC_Operation that 
> can request a GC. This was visible through jstat and with Yasumasa's 
> fix the LGCC columns shows the correct GC cause.
> Thanks,
> Bengt

More information about the hotspot-gc-dev mailing list