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

a fatal error has been detected by the Java Runtime Environment

XMLWordPrintable

    • x86_64
    • windows_10

      ADDITIONAL SYSTEM INFORMATION :
      openjdk version "1.8.0_412"
      OpenJDK Runtime Environment (Temurin)(build 1.8.0_412-b08)
      OpenJDK 64-Bit Server VM (Temurin)(build 25.412-b08, mixed mode)
      Windows10

      A DESCRIPTION OF THE PROBLEM :
      A simple testcase, which can execute success using OpenJ9, but got a fatal error using HotSpot with "-XX:+UnlockDiagnosticVMOptions -XX:-LoopLimitCheck".


      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      java -XX:+UnlockDiagnosticVMOptions -XX:-LoopLimitCheck Test6992759

      EXPECTED VERSUS ACTUAL BEHAVIOR :
      EXPECTED -
      execute success and print 0
      ACTUAL -
      #
      # A fatal error has been detected by the Java Runtime Environment:
      #
      # EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x000000006a9cb813, pid=92560, tid=0x000000000001aee4
      #
      # JRE version: OpenJDK Runtime Environment (8.0_412-b08) (build 1.8.0_412-b08)
      # Java VM: OpenJDK 64-Bit Server VM (25.412-b08 mixed mode windows-amd64 compressed oops)
      # Problematic frame:
      # V [jvm.dll+0x42b813]0

      #
      # Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
      #
      # An error report file with more information is saved as:
      # F:\study\JITFuzzing\240422\Reduce_\ClassReducer\Main\hs_err_pid92560.log
      #
      # Compiler replay data is saved as:
      # F:\study\JITFuzzing\240422\Reduce_\ClassReducer\Main\replay_pid92560.log
      #
      # If you would like to submit a bug report, please visit:
      # https://github.com/adoptium/adoptium-support/issues
      #


      ---------- BEGIN SOURCE ----------
      public class Test6992759 {
          public Test6992759() {
          }

          void doTest(int var1, int var2, int var3) {
              int var4;
              for(var4 = 0; var4 <= var2 && var4 < var1; ++var4) {
              }

              if (var4 != var1) {
                  throw new RuntimeException("Failed test iteration=");
              }
          }

          public static void main(String[] var0) throws Exception {
              Test6992759 var2 = new Test6992759();

              for(int var1 = 0; var1 < 1000000000; ++var1) {
                  var2.doTest(10, Integer.MAX_VALUE, var1);
              }

              System.out.println(0);
          }
      }
      ---------- END SOURCE ----------

            dskantz Daniel Skantz
            webbuggrp Webbug Group
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: