[8u60] Bulk backport for eager reclaim of humongous objects

Jesper Wilhelmsson jesper.wilhelmsson at oracle.com
Fri May 8 14:00:17 UTC 2015


Looks good!

One question,

In 8069367 you add the new test to TEST.groups:

  134 hotspot_gc = \
  135   sanity/ExecuteInternalVMTests.java \
  136   -gc/g1/TestGreyReclaimedHumongousObjects.java

I haven't seen tests with a - in front of them in TEST.groups before. Is that 
intentional?

Thanks,
/Jesper


Kim Barrett skrev den 29/4/15 19:22:
> Please review these backports to fix / improve the eager reclaim of
> humongous objects feature.
>
> In addition to the backports listed below, we also plan to backport
> the changeset for 8075215: "SATB buffer processing found reclaimed
> humongous object", which is presently in review.  A separate backport
> review request will be made for it, if needed.
>
> The order of the changesets below is the order in which they are to be
> applied.  The plan is to perform a block push of all of these
> changesets, plus the in-development changes for 8075215.
>
> Testing:
> JPRT
> local jtreg of hotspot/test/[closed/]{gc,runtime} with G1 as the collector
>
> ----------
> 8048179: Early reclaim of large objects that are referenced by a few objects
>
> This change enables reclaim in more situations, and sets the stage for
> the later backports. While this is an "enhancement" rather than a bug
> fix, the backport was delayed pending progress on fixing bugs in the
> already backported eager reclaim feature. This change makes those bugs
> much easier to reproduce. The remaining backports in the series are to
> address those bugs.
>
> The JDK9 change did not apply cleanly to 8u60, so re-review is needed.
>
> Merge issues in g1CollectedHeap.cpp to deal with JDK9 renamings such as
>    HeapRegion::startsHumongous() => HeapRegion::is_starts_humongous()
>    HeapRegion::isHumongous() => HeapRegion::is_humongous()
> Merge issues in g1GCPhaseTimes.cpp.
> Merge issues in heapRegionRemSet.hpp from not backported 8066102 fix.
> Merge issues in TestGCLogMessages.java from not backported 8027962 fix.
>
> CR:
> https://bugs.openjdk.java.net/browse/JDK-8048179
>
> Webrev:
> http://cr.openjdk.java.net/~kbarrett/8u60-eager-reclaim/8048179/webrev.00/
>
> Differences between JDK9 and JDK8 patches:
> http://cr.openjdk.java.net/~kbarrett/8u60-eager-reclaim/8048179/8048179.9to8.00.txt
>
> ----------
> 8076265: Simplify deal_with_reference
>
> This changeset applied cleanly, so no additional review is needed.
>
> CR:
> https://bugs.openjdk.java.net/browse/JDK-8076265
>
> Webrev:
> http://cr.openjdk.java.net/~kbarrett/8u60-eager-reclaim/8076265/webrev.00/
>
> ----------
> 8069367: Eagerly reclaimed humongous objects left on mark stack
>
> The JDK9 change did not apply cleanly to 8u60, so re-review is needed.
>
> - Merge issue in g1CollectedHeap.[ch]pp to deal with JDK9 renamings.
> - Test addition to TEST.groups required manual merge.
>
> CR:
> https://bugs.openjdk.java.net/browse/JDK-8069367
>
> Webrev:
> http://cr.openjdk.java.net/~kbarrett/8u60-eager-reclaim/8069367/webrev.00/
>
> Differences between JDK9 and JDK8 patches:
> http://cr.openjdk.java.net/~kbarrett/8u60-eager-reclaim/8069367/8069367.9to8.00.txt
>
> ----------
> 8075466: SATB queue pre-filter verify found reclaimed humongous object
>
> The JDK9 change did not apply cleanly to 8u60, so re-review is needed.
>
> - Typo in string fixed by not backported 8026849 fix.
>
> CR:
> https://bugs.openjdk.java.net/browse/JDK-8075466
>
> Webrev:
> http://cr.openjdk.java.net/~kbarrett/8u60-eager-reclaim/8075466/webrev.00/
>
> Differences between JDK9 and JDK8 patches:
> http://cr.openjdk.java.net/~kbarrett/8u60-eager-reclaim/8075466/8075466.9to8.00.txt
>
> ----------
> 8078021: SATB apply_closure_to_completed_buffer should have closure argument
>
> The JDK9 change did not apply cleanly to 8u60, so re-review is needed.
>
> - JDK8 contains special handling for ParallelGCThreads == 0, which has
>    been removed from JDK9 - 6979279: remove special-case code for
>    ParallelGCThreads=0. For the SATB code that special case was not
>    actually interesting, and we can just use the new code.
>
> CR:
> https://bugs.openjdk.java.net/browse/JDK-8078021
>
> Webrev:
> http://cr.openjdk.java.net/~kbarrett/8u60-eager-reclaim/8078021/webrev.00/
>
> Differences between JDK9 and JDK8 patches:
> http://cr.openjdk.java.net/~kbarrett/8u60-eager-reclaim/8078021/8078021.9to8.00.txt
>
> ----------
> 8078023: verify_no_cset_oops found reclaimed humongous object in SATB buffer
>
> This changeset applied cleanly, so no additional review is needed.
>
> CR:
> https://bugs.openjdk.java.net/browse/JDK-8078023
>
> Webrev:
> http://cr.openjdk.java.net/~kbarrett/8u60-eager-reclaim/8078023/webrev.00/
>
> ----------
>
> That's all, folks.
>


More information about the hotspot-gc-dev mailing list