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

jdk/jfr/threading/TestManyVirtualThreads.java crashes with assert(oopDesc::is_oop_or_null(val))

XMLWordPrintable

    • b22
    • 19

      Test
      jdk/jfr/threading/TestManyVirtualThreads.java
      crashed when executed with
      '-ea -esa -XX:CompileThreshold=100 -XX:+UnlockExperimentalVMOptions -server -XX:-TieredCompilation -XX:+DeoptimizeALot'

      The hs_err is
      #
      # A fatal error has been detected by the Java Runtime Environment:
      #
      # Internal Error (/opt/mach5/mesos/work_dir/slaves/b733f181-520a-4536-86fc-7df55263c942-S3227/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/40fa7cdb-9e8b-4618-9df4-4c058b21d234/runs/10caaef4-f70b-4aaf-bd26-9ce356201ff0/workspace/open/src/hotspot/share/runtime/stackValue.cpp:137), pid=2572820, tid=2572953
      # assert(oopDesc::is_oop_or_null(val)) failed: bad oop found at 0x0000ffff26c07c98 in_cont: 0 compressed: 0
      #
      # JRE version: Java(TM) SE Runtime Environment (25.0) (fastdebug build 25-internal-LTS-2025-01-08-2039478.leonid.mesnik.jdk-jfr-comp)
      # Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 25-internal-LTS-2025-01-08-2039478.leonid.mesnik.jdk-jfr-comp, mixed mode, sharing, compressed oops, compressed class ptrs, g1 gc, linux-aarch64)
      # Problematic frame:
      # V [libjvm.so+0x1518994] StackValue::create_stack_value_from_oop_location(stackChunkOop, void*)+0x4f4
      ...
      Current thread (0x0000ffff08001c80): JavaThread "ForkJoinPool-1-worker-2" daemon [_thread_in_Java, id=2572953, stack(0x0000ffff26a0c000,0x0000ffff26c0a000) (2040K)]

      Stack: [0x0000ffff26a0c000,0x0000ffff26c0a000], sp=0x0000ffff26c06570, free space=2025k
      Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
      V [libjvm.so+0x1518994] StackValue::create_stack_value_from_oop_location(stackChunkOop, void*)+0x4f4 (stackValue.cpp:137)
      V [libjvm.so+0x151b260] StackValue* StackValue::create_stack_value<RegisterMap>(ScopeValue*, unsigned char*, RegisterMap const*)+0x310 (stackValue.cpp:203)
      V [libjvm.so+0x16de444] compiledVFrame::create_stack_value(ScopeValue*) const+0x100 (vframe_hp.cpp:226)
      V [libjvm.so+0x16e0a80] compiledVFrame::locals() const+0x110 (vframe_hp.cpp:62)
      V [libjvm.so+0x16daa90] vframeArrayElement::fill_in(compiledVFrame*, bool)+0x110 (vframeArray.cpp:124)
      V [libjvm.so+0x16dc454] vframeArray::fill_in(JavaThread*, int, GrowableArray<compiledVFrame*>*, RegisterMap const*, bool)+0x70 (vframeArray.cpp:530)
      V [libjvm.so+0x16dc65c] vframeArray::allocate(JavaThread*, int, GrowableArray<compiledVFrame*>*, RegisterMap*, frame, frame, frame, bool)+0xdc (vframeArray.cpp:517)
      V [libjvm.so+0x9d2060] Deoptimization::create_vframeArray(JavaThread*, frame, RegisterMap*, GrowableArray<compiledVFrame*>*, bool)+0x110 (deoptimization.cpp:1697)
      V [libjvm.so+0x9d5198] Deoptimization::fetch_unroll_info_helper(JavaThread*, int)+0x468 (deoptimization.cpp:567)
      V [libjvm.so+0x9d62a8] Deoptimization::uncommon_trap(JavaThread*, int, int)+0x38 (deoptimization.cpp:2616)
      Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
      v ~UncommonTrapBlob 0x0000ffff807f00ac
      J 1605 c2 jdk.jfr.internal.event.EventWriter.beginEvent(Ljdk/jfr/internal/event/EventConfiguration;J)Z jdk.jfr@25-internal (46 bytes) @ 0x0000ffff80a93b7c [0x0000ffff80a93880+0x00000000000002fc]
      j jdk.jfr.threading.TestManyVirtualThreads$TestEvent.commit()V+64
      j jdk.jfr.threading.TestManyVirtualThreads.emitEvent()V+9
      j jdk.jfr.threading.TestManyVirtualThreads$$Lambda+0x0000600001008c00.run()V+0
      j java.lang.Thread.runWith(Ljava/lang/Object;Ljava/lang/Runnable;)V+5 java.base@25-internal
      j java.lang.VirtualThread.run(Ljava/lang/Runnable;)V+62 java.base@25-internal
      j java.lang.VirtualThread$VThreadContinuation$1.run()V+15 java.base@25-internal
      j jdk.internal.vm.Continuation.enter0()V+4 java.base@25-internal
      j jdk.internal.vm.Continuation.enter(Ljdk/internal/vm/Continuation;Z)V+1 java.base@25-internal
      J 264 jdk.internal.vm.Continuation.enterSpecial(Ljdk/internal/vm/Continuation;ZZ)V java.base@25-internal (0 bytes) @ 0x0000ffff8085cc98 [0x0000ffff8085cb80+0x0000000000000118]
      J 1569 c2 jdk.internal.vm.Continuation.run()V java.base@25-internal (586 bytes) @ 0x0000ffff80a468f8 [0x0000ffff80a46780+0x0000000000000178]
      J 1555 c2 java.lang.VirtualThread.runContinuation()V java.base@25-internal (160 bytes) @ 0x0000ffff80a49308 [0x0000ffff80a49140+0x00000000000001c8]
      J 1529 c2 java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(Ljava/util/concurrent/ForkJoinTask;I)V java.base@25-internal (18 bytes) @ 0x0000ffff809f3c78 [0x0000ffff809f3ac0+0x00000000000001b8]
      j java.util.concurrent.ForkJoinPool.runWorker(Ljava/util/concurrent/ForkJoinPool$WorkQueue;)V+362 java.base@25-internal
      j java.util.concurrent.ForkJoinWorkerThread.run()V+31 java.base@25-internal
      v ~StubRoutines::call_stub 0x0000ffff80719190
      Registers:
      R0=0x0000ffff94c30000
      R1=0x0000000000000058
      R2=0x0000ffff60000000
      R3=0x0000000000000014
      R4=0x0000000000000d00
      R5=0x0000000000000000
      R6=0x0000000000000084
      R7=0x0000000000000001
      R8=0x0000000000000001
      R9=0x0000ffff38b43b6b
      R10=0x00000000000002cb
      R11=0x0000ffff94993f90
      R12=0x000000000003cf38
      R13=0x000000000000270f
      R14=0x0000000000000002
      R15=0x0000000000000830
      R16=0x0000ffff948ba730
      R17=0x0000ffff949ebbc0
      R18=0x0000000000000002
      R19=0x0000ffff9499b840
      R20=0x0000ffff949446d6
      R21=0x0000ffff94938a00
      R22=0x0000ffff26c07c98
      R23=0x0000ffff26c06630
      R24=0x0000ffff26c065d8
      R25=0x0000000000000000
      R26=0x0000ffff26c066a0
      R27=0x0000fffef80d0878
      R28=0x0000ffff08002560
      R29=0x0000ffff26c06570
      R30=0x0000ffff93f03860


      Register to memory mapping:

      R0 =0x0000ffff94c30000 in mmap'd memory region [0x0000ffff94c30000 - 0x0000ffff94c31000], tag mtInternal
      R1 =0x0000000000000058 is an unknown value
      R2 =0x0000ffff60000000 is pointing into metadata
      R3 =0x0000000000000014 is an unknown value
      R4 =0x0000000000000d00 is an unknown value
      R5 =0x0 is null
      R6 =0x0000000000000084 is an unknown value
      R7 =0x0000000000000001 is an unknown value
      R8 =0x0000000000000001 is an unknown value
      R9 =0x0000ffff38b43b6b into live malloced block starting at 0x0000ffff38b431b0, size 2776, tag mtCode
      R10=0x00000000000002cb is an unknown value
      R11=0x0000ffff94993f90: <offset 0x0000000001fa8f90> in /opt/mach5/mesos/work_dir/jib-master/install/2025-01-08-2039478.leonid.mesnik.jdk-jfr-comp/linux-aarch64-debug.jdk/jdk-25/fastdebug/lib/server/libjvm.so at 0x0000ffff929eb000
      R12=0x000000000003cf38 is an unknown value
      R13=0x000000000000270f is an unknown value
      R14=0x0000000000000002 is an unknown value
      R15=0x0000000000000830 is an unknown value
      R16=0x0000ffff948ba730: <offset 0x0000000001ecf730> in /opt/mach5/mesos/work_dir/jib-master/install/2025-01-08-2039478.leonid.mesnik.jdk-jfr-comp/linux-aarch64-debug.jdk/jdk-25/fastdebug/lib/server/libjvm.so at 0x0000ffff929eb000
      R17=0x0000ffff949ebbc0: <offset 0x0000000000022bc0> in /lib64/libc.so.6 at 0x0000ffff949c9000
      R18=0x0000000000000002 is an unknown value
      R19=0x0000ffff9499b840: <offset 0x0000000001fb0840> in /opt/mach5/mesos/work_dir/jib-master/install/2025-01-08-2039478.leonid.mesnik.jdk-jfr-comp/linux-aarch64-debug.jdk/jdk-25/fastdebug/lib/server/libjvm.so at 0x0000ffff929eb000
      R20=0x0000ffff949446d6: <offset 0x0000000001f596d6> in /opt/mach5/mesos/work_dir/jib-master/install/2025-01-08-2039478.leonid.mesnik.jdk-jfr-comp/linux-aarch64-debug.jdk/jdk-25/fastdebug/lib/server/libjvm.so at 0x0000ffff929eb000
      R21=0x0000ffff94938a00: <offset 0x0000000001f4da00> in /opt/mach5/mesos/work_dir/jib-master/install/2025-01-08-2039478.leonid.mesnik.jdk-jfr-comp/linux-aarch64-debug.jdk/jdk-25/fastdebug/lib/server/libjvm.so at 0x0000ffff929eb000
      R22=0x0000ffff26c07c98 is pointing into the stack for thread: 0x0000ffff08001c80
      R23=0x0000ffff26c06630 is pointing into the stack for thread: 0x0000ffff08001c80
      R24=0x0000ffff26c065d8 is pointing into the stack for thread: 0x0000ffff08001c80
      R25=0x0 is null
      R26=0x0000ffff26c066a0 is pointing into the stack for thread: 0x0000ffff08001c80
      R27=0x0000fffef80d0878 into live malloced block starting at 0x0000fffef80d0070, size 32744, tag mtChunk
      R28=0x0000ffff08002560 into live malloced block starting at 0x0000ffff08002550, size 1000, tag mtChunk
      R29=0x0000ffff26c06570 is pointing into the stack for thread: 0x0000ffff08001c80
      R30=0x0000ffff93f03860: <offset 0x0000000001518860> in /opt/mach5/mesos/work_dir/jib-master/install/2025-01-08-2039478.leonid.mesnik.jdk-jfr-comp/linux-aarch64-debug.jdk/jdk-25/fastdebug/lib/server/libjvm.so at 0x0000ffff929eb000
      R31=0x0000ffff26c06570 is pointing into the stack for thread: 0x0000ffff08001c80

      Top of Stack: (sp=0x0000ffff26c06570)
      0x0000ffff26c06570: 0000ffff26c065e0 0000ffff93f06260 .e.&....`b......
      0x0000ffff26c06580: 0000ffff26c06630 0000fffef80d00d0 0f.&............
      0x0000ffff26c06590: 0000ffff949446d6 0000ffff26c07c98 .F.......|.&....
      0x0000ffff26c065a0: 0000fffef80d08d0 0000ffff26c066a8 .........f.&....
      0x0000ffff26c065b0: 00000000ffffffff 0000ffff26c066a0 .........f.&....
      0x0000ffff26c065c0: 00000000ece152f0 0000000000000000 .R..............
      0x0000ffff26c065d0: 00000000ffffffff 00000000ece152f0 .........R......
      0x0000ffff26c065e0: 0000ffff26c06640 0000ffff940c9444 @f.&....D.......
      0x0000ffff26c065f0: 0000ffff949446d6 0000fffef80d00d0 .F..............
      0x0000ffff26c06600: 0000fffef80d0080 0000ffff9499b840 ........@.......
      0x0000ffff26c06610: 0000fffef80d08d0 0000000000000000 ................
      0x0000ffff26c06620: 0000ffff000000c2 0000000000000000 ................
      0x0000ffff26c06630: 0000000000000000 0000000000000000 ................
      0x0000ffff26c06640: 0000ffff26c066b0 0000ffff940cba80 .f.&............
      0x0000ffff26c06650: 0000fffef80d0958 0000000000000000 X...............
      0x0000ffff26c06660: 0000fffef80d0080 0000fffef80d0950 ........P.......
      0x0000ffff26c06670: 0000000000000004 0000ffff94938a00 ................
      0x0000ffff26c06680: 0000000000000001 0000000000000020 ........ .......
      0x0000ffff26c06690: 0000fffef80d0958 0000000000000000 X...............
      0x0000ffff26c066a0: 0000000000000000 0000000000000000 ................
      0x0000ffff26c066b0: 0000ffff26c06720 0000ffff940c5a90 g.&.....Z......
      0x0000ffff26c066c0: 0000ffff94938a00 0000fffef842dea8 ..........B.....
      0x0000ffff26c066d0: 0000ffff08001c80 0000000000000001 ................
      0x0000ffff26c066e0: 0000ffff08002560 0000fffef842df20 `%...... .B.....
      0x0000ffff26c066f0: 0000000000000000 0000ffff08001c80 ................
      0x0000ffff26c06700: 0000fffef80d0858 0000ffff08002560 X.......`%......
      0x0000ffff26c06710: 0000ffff08001c80 0000000000000001 ................
      0x0000ffff26c06720: 0000ffff26c06860 0000ffff940c7454 `h.&....Tt......
      0x0000ffff26c06730: 0000ffff26c06e50 0000ffff94938a00 Pn.&............
      0x0000ffff26c06740: 0000fffef842d730 0000000000000001 0.B.............
      0x0000ffff26c06750: 0000ffff08002560 0000fffef842df20 `%...... .B.....
      0x0000ffff26c06760: 0000000000000000 0000ffff08001c80 ................

      Instructions: (pc=0x0000ffff93f03994)
        0x0000ffff93f03894: 60 1b 00 54 f9 6b 44 a9 a9 ff ff 17 80 02 40 39
        0x0000ffff93f038a4: 15 00 80 d2 e0 f8 07 36 e0 83 01 91 d4 a2 f8 97
        0x0000ffff93f038b4: c4 ff ff 17 e0 83 01 91 9d a2 f8 97 a0 02 40 b9
        0x0000ffff93f038c4: 1f 00 00 71 4c f5 ff 54 a0 4d 00 f0 01 98 47 f9
        0x0000ffff93f038d4: 00 c0 3c 91 20 00 3f d6 c0 6a 60 f8 e0 18 00 b4
        0x0000ffff93f038e4: 1f 00 17 eb 40 f4 ff 54 60 4d 00 b0 00 64 41 f9
        0x0000ffff93f038f4: f9 6b 04 a9 05 0b 80 52 43 19 00 f0 22 1a 00 b0
        0x0000ffff93f03904: 04 00 40 f9 63 20 03 91 40 19 00 f0 42 80 3f 91
        0x0000ffff93f03914: 00 20 11 91 c1 04 80 52 85 00 00 39 90 22 d2 97
        0x0000ffff93f03924: e0 43 01 91 b6 a2 f8 97 f5 5b 42 a9 e0 03 13 aa
        0x0000ffff93f03934: f3 53 41 a9 f7 63 43 a9 fd 7b c7 a8 c0 03 5f d6
        0x0000ffff93f03944: e0 03 18 aa ae a2 f8 97 f9 6b 44 a9 80 02 40 39
        0x0000ffff93f03954: 00 ee 07 36 e0 63 01 91 a9 a2 f8 97 6d ff ff 17
        0x0000ffff93f03964: e0 03 18 aa 72 a2 f8 97 62 ff ff 17 c0 17 00 b4
        0x0000ffff93f03974: f9 6b 04 a9 49 ff ff 17 80 02 40 39 00 11 00 37
        0x0000ffff93f03984: 60 4d 00 b0 00 64 41 f9 01 0b 80 52 00 00 40 f9
      =>0x0000ffff93f03994: 01 00 00 39 61 02 40 f9 e0 02 40 f9 a1 0f 00 b4
        0x0000ffff93f039a4: 80 0f 00 b4 20 00 3f d6 e0 02 40 f9 61 02 40 f9
        0x0000ffff93f039b4: 1f 00 00 f1 f4 07 9f 1a 3f 00 00 f1 84 1a 40 7a
        0x0000ffff93f039c4: 80 00 00 54 20 00 3f d6 34 00 80 52 e0 02 40 f9
        0x0000ffff93f039d4: c0 0d 00 b4 61 02 40 f9 41 00 00 b4 20 00 3f d6
        0x0000ffff93f039e4: e0 02 40 f9 7a 31 d1 97 00 0d 20 36 60 4d 00 b0
        0x0000ffff93f039f4: 00 b0 41 f9 06 00 40 39 86 0c 00 36 63 28 00 f0
        0x0000ffff93f03a04: 62 28 00 f0 60 28 00 f0 e5 03 14 2a e4 03 16 aa
        0x0000ffff93f03a14: 63 80 34 91 42 60 35 91 00 20 36 91 21 11 80 52
        0x0000ffff93f03a24: 4f 22 d2 97 40 00 3f d6 f8 a3 01 91 80 02 40 39
        0x0000ffff93f03a34: 00 f1 07 36 07 00 00 14 81 02 40 39 e0 33 00 f9
        0x0000ffff93f03a44: 01 09 00 36 e0 83 01 91 39 a2 f8 97 c0 fe ff 17
        0x0000ffff93f03a54: e0 03 18 aa 36 a2 f8 97 7e ff ff 17 e0 43 01 91
        0x0000ffff93f03a64: 33 a2 f8 97 75 4d 00 b0 b5 62 41 f9 80 02 40 39
        0x0000ffff93f03a74: b8 ff ff 17 80 4d 00 90 00 54 44 f9 ff 37 00 f9
        0x0000ffff93f03a84: 18 00 40 b9 c1 fe ff 17 e0 03 18 aa 5c a2 f8 97


      Stack slot to memory mapping:

      stack at sp + 0 slots: 0x0000ffff26c065e0 is pointing into the stack for thread: 0x0000ffff08001c80
      stack at sp + 1 slots: 0x0000ffff93f06260: <offset 0x000000000151b260> in /opt/mach5/mesos/work_dir/jib-master/install/2025-01-08-2039478.leonid.mesnik.jdk-jfr-comp/linux-aarch64-debug.jdk/jdk-25/fastdebug/lib/server/libjvm.so at 0x0000ffff929eb000
      stack at sp + 2 slots: 0x0000ffff26c06630 is pointing into the stack for thread: 0x0000ffff08001c80
      stack at sp + 3 slots: 0x0000fffef80d00d0 into live malloced block starting at 0x0000fffef80d0070, size 32744, tag mtChunk
      stack at sp + 4 slots: 0x0000ffff949446d6: <offset 0x0000000001f596d6> in /opt/mach5/mesos/work_dir/jib-master/install/2025-01-08-2039478.leonid.mesnik.jdk-jfr-comp/linux-aarch64-debug.jdk/jdk-25/fastdebug/lib/server/libjvm.so at 0x0000ffff929eb000
      stack at sp + 5 slots: 0x0000ffff26c07c98 is pointing into the stack for thread: 0x0000ffff08001c80
      stack at sp + 6 slots: 0x0000fffef80d08d0 into live malloced block starting at 0x0000fffef80d0070, size 32744, tag mtChunk
      stack at sp + 7 slots: 0x0000ffff26c066a8 is pointing into the stack for thread: 0x0000ffff08001c80

      Lock stack of current Java thread (top to bottom):

            Unassigned Unassigned
            lmesnik Leonid Mesnik
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: