Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8257220

[JVMCI] option validation should not result in a heavy-weight VM crash

XMLWordPrintable

    • b27

        As a result of JDK-8253228, a VM crash occurs for incorrectly specified JVMCI options. For example:

        > java -XX:+UnlockExperimentalVMOptions -XX:+EagerJVMCI -XX:+UseJVMCICompiler -Djvmci.InitTiimer=true
        Uncaught exception exiting JVMCIEnv scope entered at src/hotspot/share/jvmci/jvmciRuntime.cpp:626
        java.lang.IllegalArgumentException: Could not find option jvmci.InitTiimer
        Did you mean one of the following?
            jvmci.InitTimer=<value>
        at jdk.vm.ci.hotspot.HotSpotJVMCIRuntime$Option.parse(jdk.internal.vm.ci/HotSpotJVMCIRuntime.java:405)
        at jdk.vm.ci.hotspot.HotSpotJVMCIRuntime.<init>(jdk.internal.vm.ci/HotSpotJVMCIRuntime.java:534)
        at jdk.vm.ci.hotspot.HotSpotJVMCIRuntime.runtime(jdk.internal.vm.ci/HotSpotJVMCIRuntime.java:174)
        at jdk.vm.ci.runtime.JVMCI.initializeRuntime(jdk.internal.vm.ci/Native Method)
        at jdk.vm.ci.runtime.JVMCI.getRuntime(jdk.internal.vm.ci/JVMCI.java:65)
        #
        # A fatal error has been detected by the Java Runtime Environment:
        #
        # Internal Error (jvmciRuntime.cpp:1102), pid=55794, tid=7939
        # fatal error: Fatal exception in JVMCI: Uncaught exception exiting JVMCIEnv scope entered at src/hotspot/share/jvmci/jvmciRuntime.cpp:626
        #
        # JRE version: OpenJDK Runtime Environment (16.0) (build 16-internal+0-adhoc.dnsimon.open)
        # Java VM: OpenJDK 64-Bit Server VM (16-internal+0-adhoc.dnsimon.open, mixed mode, tiered, jvmci, jvmci compiler, compressed oops, g1 gc, bsd-amd64)
        # No core dump will be written. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
        #
        # An error report file with more information is saved as:
        # /Users/dnsimon/jdk-jdk/open/hs_err_pid55794.log
        #
        # If you would like to submit a bug report, please visit:
        # https://bugreport.java.com/bugreport/crash.jsp
        #
        fish: 'build/macosx-x86_64-server-releā€¦' terminated by signal SIGABRT (Abort)
         
        This is too heavy weight. It should resemble how -XX parsing errors are reported:

        > java -XX:-UseOnStackReplacemen -version
        Unrecognized VM option 'UseOnStackReplacemen'
        Did you mean '(+/-)UseOnStackReplacement'? Error: Could not create the Java Virtual Machine.
        Error: A fatal exception has occurred. Program will exit.

              dnsimon Douglas Simon
              dnsimon Douglas Simon
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: