RFR(M): 8139867: Change how startsHumongous and continuesHumongous regions work in G1.
david.lindholm at oracle.com
Mon Nov 2 09:15:37 UTC 2015
Per offline discussions I have changed how we iterate heapRegions in
Webrev: http://cr.openjdk.java.net/~david/JDK-8139867/webrev.00-01/ (diff)
On 2015-10-29 14:34, David Lindholm wrote:
> Please review the following patch that changes how startsHumongous and
> continuesHumongous regions work in G1. Before this patch the top and
> end of the startsHumongous regions were set so that they covered the
> entire object, pointing into the last continousHumongous region for
> this object. So used() and capacity() of the startsHumongous region
> could be substantially larger than a normal region size.
> Now each region is "self-contained", so top and end will not point
> outside the region. This makes it possible to remove many special
> cases in the code, and the model is more clear. Also, one doesn't have
> to figure out if G1CollectedHeap::heap_region_containing_raw() or
> G1CollectedHeap::heap_region_containing() should be called (only the
> latter is left in the code).
> Bug: https://bugs.openjdk.java.net/browse/JDK-8139867
> Webrev: http://cr.openjdk.java.net/~david/JDK-8139867/webrev.00/
> Testing: Passed JPRT.
More information about the hotspot-gc-dev