Problematic backport to 8u: "Ensure tasks use correct number of workers"

Aleksey Shipilev shade at redhat.com
Wed Sep 27 11:15:35 UTC 2017


Tried to backport recent sh/jdk10 patch to sh/jdk8u, and got weird failures:

~/trunks/shenandoah-jdk8/build/linux-x86_64-normal-server-fastdebug/images/j2sdk-image/bin/java
-XX:+UseShenandoahGC -XX:ConcGCThreads=2 -XX:ParallelGCThreads=4 -XX:+UnlockDiagnosticVMOptions
-Xmx16m -XX:ShenandoahGCHeuristics=aggressive -Dtarget=100 TestGCThreadGroups
# To suppress the following error report, specify this argument
# after -XX: or in .hotspotrc:  SuppressErrorAt=/workgroup.hpp:335
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error
(/home/shade/trunks/shenandoah-jdk8/hotspot/src/share/vm/utilities/workgroup.hpp:335), pid=49844,
tid=0x00007f8d3988d700
#  assert(UseDynamicNumberOfGCThreads || _active_workers == _total_workers) failed: Unless dynamic
should use total workers

It seems the internals of workgroup.hpp are quite different.

The patch in question is:
 http://cr.openjdk.java.net/~shade/shenandoah/shenandoah-8u-dynamic-workers.patch

Zhengyu, can you take a look how to adapt this to 8u properly? I'll skip this from backports for
time being.

Thanks,
-Aleksey



More information about the shenandoah-dev mailing list