RFR: Fix merge error in ShenandoahFullGC
Ron Pressler
rpressler at openjdk.java.net
Fri Feb 12 22:54:45 UTC 2021
On Fri, 12 Feb 2021 21:33:43 GMT, Roman Kennke <rkennke at openjdk.org> wrote:
> In the code section that is changed here, we originally had in Loom:
>
> old_obj->copy_conjoint(heap->get_region(new_start)->bottom(),
> ShenandoahHeapRegion::region_size_words()*num_regions);
>
> However this was wrong because the size exceeded the object size. This apparently came from original upstream:
> Copy::aligned_conjoint_words(heap->get_region(old_start)->bottom(),
> heap->get_region(new_start)->bottom(),
> ShenandoahHeapRegion::region_size_words()*num_regions);
>
>
> I recently fixed that in upstream to use the object size instead:
>
> Copy::aligned_conjoint_words(heap->get_region(old_start)->bottom(),
> heap->get_region(new_start)->bottom(),
> words_size);
>
>
> Which has been wrongly merged as-is into loom. This patch restores the original version that has been in Loom, with the change to use object size instead of region size.
>
> Testing:
> - [x] hotspot_gc_shenandoah
> - [x] java/lang/Continuation (-XX:+UseShenandoahGC)
> - [x] java/lang/Thread/virtual (-XX:+UseShenandoahGC)
Marked as reviewed by rpressler (Lead).
-------------
PR: https://git.openjdk.java.net/loom/pull/31
More information about the loom-dev
mailing list