RFR (S) 8220350: Refactor ShenandoahHeap::initialize
Zhengyu Gu
zgu at redhat.com
Fri Mar 8 18:45:12 UTC 2019
On 3/8/19 12:14 PM, Aleksey Shipilev wrote:
> RFE:
> https://bugs.openjdk.java.net/browse/JDK-8220350
>
> Fix:
> http://cr.openjdk.java.net/~shade/8220350/webrev.01/
>
With large pages, there is a possibility that a single page can host
multiple regions. Our region based commit/uncommit might not work in
this scenario. Have you tested it?
SH::initialize() still a 200 lines function, might be good to break it
up, e.g. a method for each section? Otherwise, looks good.
Thanks,
-Zhengyu
> This prepares Shenandoah code for accepting bugfixes in this method. Some asserts are added to
> verify important fields are indeed initialized. Pacer cache moved out of ShHeapRegion to resolve
> initialization circularity -- it does not matter anyway, because increase_live_data_gc_words is
> called rarely itself, being protected by the cache during mark.
>
> Testing: hotspot_gc_shenandoah
>
> Thanks,
> -Aleksey
>
More information about the hotspot-gc-dev
mailing list