RFR: Exit gracefully when Shenandoah is not supported

Roman Kennke rkennke at redhat.com
Tue Mar 21 11:11:25 UTC 2017


Yes, please

Am 21. März 2017 12:01:28 MEZ schrieb Aleksey Shipilev <shade at redhat.com>:
>This affects only 9. It will crash like this:
>
>$ build/linux-x86-normal-server-release/images/jdk/bin/java
>-XX:+UseShenandoahGC
>-version
>OpenJDK Server VM warning: -XX:+UseShenandoahGC not supported in this
>VM
>#
># A fatal error has been detected by the Java Runtime Environment:
>#
>#  Internal Error (universe.cpp:745), pid=18763, tid=18764
>#  Error: ShouldNotReachHere()
>
>
>The trouble is that JDK 9 code is missing UNSUPPORTED_GC_OPTION macro,
>which
>used to default to Serial GC in cases like this. Let's just exit
>gracefully:
>
>diff -r a7f9abea2a6d src/share/vm/runtime/arguments.cpp
>--- a/src/share/vm/runtime/arguments.cpp	Tue Mar 21 11:32:00 2017 +0100
>+++ b/src/share/vm/runtime/arguments.cpp	Tue Mar 21 12:00:55 2017 +0100
>@@ -2053,7 +2053,7 @@
> void Arguments::set_shenandoah_gc_flags() {
>
> #if !(defined AARCH64 || defined AMD64)
>-  UNSUPPORTED_OPTION(UseShenandoahGC);
>+  vm_exit_during_initialization("Shenandoah GC is not supported on
>this
>platform.");
> #endif
>
> #ifdef _LP64
>
>$ build/linux-x86-normal-server-release/images/jdk/bin/java
>-XX:+UseShenandoahGC
>-version
>Error occurred during initialization of VM
>Shenandoah GC is not supported on this platform.
>
>
>Thanks,
>-Aleksey

-- 
Sent from my FairPhone


More information about the shenandoah-dev mailing list