Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8259276 C2: Empty expression stack when reexecuting tableswitch/lookupswitch instructions after deoptimization
  3. JDK-8258636

SharedRuntime::OSR_migration_begin fails "assert((intptr_t*) result < fp()) failed: monitor end should be strictly below the frame pointer"

XMLWordPrintable

    • x86_64
    • linux

      The following test failed in the JDK17 CI:

      applications/kitchensink/Kitchensink.java

      Here's a snippet from the log file:

      Iteration start: MemAccess at Thu Dec 17 16:07:33 UTC 2020
      # To suppress the following error report, specify this argument
      # after -XX: or in .hotspotrc: SuppressErrorAt=/frame_x86.cpp:317


      The tail of stress stdout is:
      For random generator using seed: 1514474456048227099
      To re-run test with same seed value please add "-Djdk.test.lib.random.seed=1514474456048227099" to command line.
      Stress process main method is started.
      #
      # A fatal error has been detected by the Java Runtime Environment:
      #
      # Internal Error (/opt/mach5/mesos/work_dir/slaves/983c483a-6907-44e0-ad29-98c7183575e2-S14565/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/3e15779a-b9e2-4450-903b-11d0398c9507/runs/ce4b62ef-4c3f-4a04-bc50-33f662296a26/workspace/open/src/hotspot/cpu/x86/frame_x86.cpp:317), pid=14741, tid=28863
      # assert((intptr_t*) result < fp()) failed: monitor end should be strictly below the frame pointer
      #
      # JRE version: Java(TM) SE Runtime Environment (17.0+3) (fastdebug build 17-ea+3-LTS-67)
      # Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 17-ea+3-LTS-67, mixed mode, sharing, tiered, compressed oops, serial gc, linux-amd64)
      # Problematic frame:
      # V [libjvm.so+0xbd437b] frame::interpreter_frame_monitor_end() const+0x8b
      #
      # Core dump will be written. Default location: Core dumps may be processed with "/opt/core.sh %p" (or dumping to /opt/mach5/mesos/work_dir/slaves/983c483a-6907-44e0-ad29-98c7183575e2-S14635/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/eff843ea-7a24-4724-ab1f-145026e6caea/runs/3b98c5ae-f40a-42f1-8cbb-26d1b8c725da/testoutput/test-support/jtreg_closed_test_hotspot_jtreg_applications_kitchensink_Kitchensink_java/scratch/0/core.14741)
      #
      Unsupported internal testing APIs have been used.

      # An error report file with more information is saved as:
      # /opt/mach5/mesos/work_dir/slaves/983c483a-6907-44e0-ad29-98c7183575e2-S14635/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/eff843ea-7a24-4724-ab1f-145026e6caea/runs/3b98c5ae-f40a-42f1-8cbb-26d1b8c725da/testoutput/test-support/jtreg_closed_test_hotspot_jtreg_applications_kitchensink_Kitchensink_java/scratch/0/hs_err_pid14741.log
      #
      # If you would like to submit a bug report, please visit:
      # https://bugreport.java.com/bugreport/crash.jsp
      #
      ----------System.err:(223/21001)----------


      Here's the crashing thread's stack:

      --------------- T H R E A D ---------------

      Current thread (0x00007fb190011f30): JavaThread "Program Runner for xml.transform" [_thread_in_Java, id=28863, stack(0x00007fb116ef6000,0x00007fb116ff7000)]

      Stack: [0x00007fb116ef6000,0x00007fb116ff7000], sp=0x00007fb116ff41b0, free space=1016k
      Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code)
      V [libjvm.so+0xbd437b] frame::interpreter_frame_monitor_end() const+0x8b
      V [libjvm.so+0xbcb6d5] frame::interpreter_frame_expression_stack_size() const+0x15
      V [libjvm.so+0x17251b1] SharedRuntime::OSR_migration_begin(JavaThread*)+0x91
      j org.w3c.tidy.Lexer.getToken(S)Lorg/w3c/tidy/Node;+120
      J 60065 c2 org.w3c.tidy.ParserImpl$ParseBlock.parse(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V (1635 bytes) @ 0x00007fb226bdef00 [0x00007fb226bdeba0+0x0000000000000360]
      J 57765 c2 org.w3c.tidy.ParserImpl.parseTag(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V (72 bytes) @ 0x00007fb225b8fd78 [0x00007fb225b8fcc0+0x00000000000000b8]
      J 60256 c1 org.w3c.tidy.ParserImpl$ParseList.parse(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V (435 bytes) @ 0x00007fb21e291c44 [0x00007fb21e291300+0x0000000000000944]
      J 60065 c2 org.w3c.tidy.ParserImpl$ParseBlock.parse(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V (1635 bytes) @ 0x00007fb226bdf484 [0x00007fb226bdeba0+0x00000000000008e4]
      J 57765 c2 org.w3c.tidy.ParserImpl.parseTag(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V (72 bytes) @ 0x00007fb225b8fd78 [0x00007fb225b8fcc0+0x00000000000000b8]
      J 60256 c1 org.w3c.tidy.ParserImpl$ParseList.parse(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V (435 bytes) @ 0x00007fb21e291c44 [0x00007fb21e291300+0x0000000000000944]
      J 60065 c2 org.w3c.tidy.ParserImpl$ParseBlock.parse(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V (1635 bytes) @ 0x00007fb226bdf484 [0x00007fb226bdeba0+0x00000000000008e4]
      J 57765 c2 org.w3c.tidy.ParserImpl.parseTag(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V (72 bytes) @ 0x00007fb225b8fd78 [0x00007fb225b8fcc0+0x00000000000000b8]
      J 57762 c1 org.w3c.tidy.ParserImpl$ParseRow.parse(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V (559 bytes) @ 0x00007fb21deaf89c [0x00007fb21deaec60+0x0000000000000c3c]
      J 57765 c2 org.w3c.tidy.ParserImpl.parseTag(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V (72 bytes) @ 0x00007fb225b8fd78 [0x00007fb225b8fcc0+0x00000000000000b8]
      J 59285 c1 org.w3c.tidy.ParserImpl$ParseTableTag.parse(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V (502 bytes) @ 0x00007fb21da187b4 [0x00007fb21da17b20+0x0000000000000c94]
      J 57764 c2 org.w3c.tidy.ParserImpl.access$0(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V (7 bytes) @ 0x00007fb225b57b78 [0x00007fb225b57ac0+0x00000000000000b8]
      j org.w3c.tidy.ParserImpl$ParseBody.parse(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V+1014
      J 57764 c2 org.w3c.tidy.ParserImpl.access$0(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V (7 bytes) @ 0x00007fb225b57b78 [0x00007fb225b57ac0+0x00000000000000b8]
      j org.w3c.tidy.ParserImpl$ParseHTML.parse(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V+616
      j org.w3c.tidy.ParserImpl.parseDocument(Lorg/w3c/tidy/Lexer;)Lorg/w3c/tidy/Node;+140
      j org.w3c.tidy.Tidy.parse(Ljava/io/InputStream;Ljava/lang/String;Ljava/io/OutputStream;)Lorg/w3c/tidy/Node;+191
      j org.w3c.tidy.Tidy.parse(Ljava/io/InputStream;Ljava/io/OutputStream;)Lorg/w3c/tidy/Node;+6
      j spec.benchmarks.xml.transform.ExtOutputStream.runTidy()V+66
      j spec.benchmarks.xml.transform.ExtOutputStream.check(Ljava/lang/String;)V+34
      j spec.benchmarks.xml.transform.ExtOutputStream.checkResult(I)V+34
      j spec.benchmarks.xml.transform.Main.transform(Ljavax/xml/transform/Transformer;Ljavax/xml/transform/Source;Ljava/lang/String;I)V+27
      j spec.benchmarks.xml.transform.Main.executeWorkload()V+170
      j spec.benchmarks.xml.transform.Main.harnessMain()V+8
      j spec.benchmarks.xml.transform.Main.setupBenchmark()V+182
      v ~StubRoutines::call_stub
      V [libjvm.so+0xe60655] JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, Thread*)+0x595
      V [libjvm.so+0x16ad6e5] invoke(InstanceKlass*, methodHandle const&, Handle, bool, objArrayHandle, BasicType, objArrayHandle, bool, Thread*) [clone .constprop.0]+0xee5
      V [libjvm.so+0x16ae86a] Reflection::invoke_method(oop, Handle, objArrayHandle, Thread*)+0x19a
      V [libjvm.so+0x101b77b] JVM_InvokeMethod+0x1cb
      j jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+0 java.base@17-ea
      j jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+146 java.base@17-ea
      J 36101 c2 jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; java.base@17-ea (10 bytes) @ 0x00007fb224f630b8 [0x00007fb224f63040+0x0000000000000078]
      J 35806 c1 java.lang.reflect.Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; java.base@17-ea (65 bytes) @ 0x00007fb21d80ceb4 [0x00007fb21d80cd20+0x0000000000000194]
      j spec.harness.ProgramRunner.invokeBmSetupBenchmark()V+9
      j spec.harness.ProgramRunner.runBenchmark()Z+646
      j spec.harness.ProgramRunner.run()V+16
      v ~StubRoutines::call_stub
      V [libjvm.so+0xe60655] JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, Thread*)+0x595
      V [libjvm.so+0xe60ed5] JavaCalls::call_virtual(JavaValue*, Klass*, Symbol*, Symbol*, JavaCallArguments*, Thread*)+0x4c5
      V [libjvm.so+0xe6137c] JavaCalls::call_virtual(JavaValue*, Handle, Klass*, Symbol*, Symbol*, Thread*)+0xac
      V [libjvm.so+0xffa9eb] thread_entry(JavaThread*, Thread*)+0x12b
      V [libjvm.so+0x18bef26] JavaThread::thread_main_inner()+0x256
      V [libjvm.so+0x18c58a0] Thread::call_run()+0x100
      V [libjvm.so+0x15a7866] thread_native_entry(Thread*)+0x116

      Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
      j org.w3c.tidy.Lexer.getToken(S)Lorg/w3c/tidy/Node;+120
      J 60065 c2 org.w3c.tidy.ParserImpl$ParseBlock.parse(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V (1635 bytes) @ 0x00007fb226bdef00 [0x00007fb226bdeba0+0x0000000000000360]
      J 57765 c2 org.w3c.tidy.ParserImpl.parseTag(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V (72 bytes) @ 0x00007fb225b8fd78 [0x00007fb225b8fcc0+0x00000000000000b8]
      J 60256 c1 org.w3c.tidy.ParserImpl$ParseList.parse(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V (435 bytes) @ 0x00007fb21e291c44 [0x00007fb21e291300+0x0000000000000944]
      J 60065 c2 org.w3c.tidy.ParserImpl$ParseBlock.parse(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V (1635 bytes) @ 0x00007fb226bdf484 [0x00007fb226bdeba0+0x00000000000008e4]
      J 57765 c2 org.w3c.tidy.ParserImpl.parseTag(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V (72 bytes) @ 0x00007fb225b8fd78 [0x00007fb225b8fcc0+0x00000000000000b8]
      J 60256 c1 org.w3c.tidy.ParserImpl$ParseList.parse(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V (435 bytes) @ 0x00007fb21e291c44 [0x00007fb21e291300+0x0000000000000944]
      J 60065 c2 org.w3c.tidy.ParserImpl$ParseBlock.parse(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V (1635 bytes) @ 0x00007fb226bdf484 [0x00007fb226bdeba0+0x00000000000008e4]
      J 57765 c2 org.w3c.tidy.ParserImpl.parseTag(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V (72 bytes) @ 0x00007fb225b8fd78 [0x00007fb225b8fcc0+0x00000000000000b8]
      J 57762 c1 org.w3c.tidy.ParserImpl$ParseRow.parse(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V (559 bytes) @ 0x00007fb21deaf89c [0x00007fb21deaec60+0x0000000000000c3c]
      J 57765 c2 org.w3c.tidy.ParserImpl.parseTag(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V (72 bytes) @ 0x00007fb225b8fd78 [0x00007fb225b8fcc0+0x00000000000000b8]
      J 59285 c1 org.w3c.tidy.ParserImpl$ParseTableTag.parse(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V (502 bytes) @ 0x00007fb21da187b4 [0x00007fb21da17b20+0x0000000000000c94]
      J 57764 c2 org.w3c.tidy.ParserImpl.access$0(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V (7 bytes) @ 0x00007fb225b57b78 [0x00007fb225b57ac0+0x00000000000000b8]
      j org.w3c.tidy.ParserImpl$ParseBody.parse(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V+1014
      J 57764 c2 org.w3c.tidy.ParserImpl.access$0(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V (7 bytes) @ 0x00007fb225b57b78 [0x00007fb225b57ac0+0x00000000000000b8]
      j org.w3c.tidy.ParserImpl$ParseHTML.parse(Lorg/w3c/tidy/Lexer;Lorg/w3c/tidy/Node;S)V+616
      j org.w3c.tidy.ParserImpl.parseDocument(Lorg/w3c/tidy/Lexer;)Lorg/w3c/tidy/Node;+140
      j org.w3c.tidy.Tidy.parse(Ljava/io/InputStream;Ljava/lang/String;Ljava/io/OutputStream;)Lorg/w3c/tidy/Node;+191
      j org.w3c.tidy.Tidy.parse(Ljava/io/InputStream;Ljava/io/OutputStream;)Lorg/w3c/tidy/Node;+6
      j spec.benchmarks.xml.transform.ExtOutputStream.runTidy()V+66
      j spec.benchmarks.xml.transform.ExtOutputStream.check(Ljava/lang/String;)V+34
      j spec.benchmarks.xml.transform.ExtOutputStream.checkResult(I)V+34
      j spec.benchmarks.xml.transform.Main.transform(Ljavax/xml/transform/Transformer;Ljavax/xml/transform/Source;Ljava/lang/String;I)V+27
      j spec.benchmarks.xml.transform.Main.executeWorkload()V+170
      j spec.benchmarks.xml.transform.Main.harnessMain()V+8
      j spec.benchmarks.xml.transform.Main.setupBenchmark()V+182
      v ~StubRoutines::call_stub
      j jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+0 java.base@17-ea
      j jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+146 java.base@17-ea
      J 36101 c2 jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; java.base@17-ea (10 bytes) @ 0x00007fb224f630b8 [0x00007fb224f63040+0x0000000000000078]
      J 35806 c1 java.lang.reflect.Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; java.base@17-ea (65 bytes) @ 0x00007fb21d80ceb4 [0x00007fb21d80cd20+0x0000000000000194]
      j spec.harness.ProgramRunner.invokeBmSetupBenchmark()V+9
      j spec.harness.ProgramRunner.runBenchmark()Z+646
      j spec.harness.ProgramRunner.run()V+16
      v ~StubRoutines::call_stub

            vlivanov Vladimir Ivanov
            dcubed Daniel Daugherty
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: