Virtual thread crash in Continuation::try_preempt: assert(!_current->is_suspended()) failed: must be

XMLWordPrintable

    • Type: Bug
    • Resolution: Unresolved
    • Priority: P3
    • 27
    • Affects Version/s: 27
    • Component/s: hotspot
    • x86_64
    • linux, windows

      Test: serviceability/jvmti/vthread/ThreadStateTest2/ThreadStateTest2.java


      # A fatal error has been detected by the Java Runtime Environment:
      #
      # Internal Error (/opt/mach5/mesos/work_dir/slaves/da1065b5-7b94-4f0d-85e9-a3a252b9a32e-S87440/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/f2aaae4b-12c4-4b51-bebd-570b2454bea4/runs/de00c4f8-fe94-4906-b102-98f9cfe61de7/workspace/open/src/hotspot/share/runtime/continuation.cpp:89), pid=1494776, tid=1494894
      # assert(!_current->is_suspended()) failed: must be
      #
      # JRE version: Java(TM) SE Runtime Environment (27.0+7) (fastdebug build 27-ea+7-517)
      # Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 27-ea+7-517, mixed mode, tiered, compressed oops, compressed class ptrs, parallel gc, linux-amd64)
      # Problematic frame:
      # V [libjvm.so+0xc0d659] Continuation::try_preempt(JavaThread*, oop)+0xfe9
      #
      # Core dump will be written. Default location: Determined by the following: "/opt/core.sh %p" (alternatively, falling back to /opt/mach5/mesos/work_dir/slaves/da1065b5-7b94-4f0d-85e9-a3a252b9a32e-S87489/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/3e068ddf-893f-42da-b039-13dbd4046923/runs/df3016b4-267e-4ebd-9771-95a5e4926668/testoutput/test-support/jtreg_open_test_hotspot_jtreg_tier1_serviceability/scratch/0/core.1494776)
      #
      # If you would like to submit a bug report, please visit:
      # https://bugreport.java.com/bugreport/crash.jsp
      #

      --------------- S U M M A R Y ------------

      Command Line: -Dtest.vm.opts=-XX:MaxRAMPercentage=4.16667 -Dtest.boot.jdk=/opt/mach5/mesos/work_dir/jib-master/install/jdk/25/37/bundles/linux-x64/jdk-25_linux-x64_bin.tar.gz/jdk-25 -Djava.io.tmpdir=/opt/mach5/mesos/work_dir/slaves/da1065b5-7b94-4f0d-85e9-a3a252b9a32e-S87489/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/3e068ddf-893f-42da-b039-13dbd4046923/runs/df3016b4-267e-4ebd-9771-95a5e4926668/testoutput/test-support/jtreg_open_test_hotspot_jtreg_tier1_serviceability/tmp -XX:AOTCache=/opt/mach5/mesos/work_dir/slaves/da1065b5-7b94-4f0d-85e9-a3a252b9a32e-S87489/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/3e068ddf-893f-42da-b039-13dbd4046923/runs/df3016b4-267e-4ebd-9771-95a5e4926668/./testoutput/test-support/jtreg_open_test_hotspot_jtreg_tier1_serviceability/aot/jdk.aotcache -Dtest.tool.vm.opts=-J-XX:MaxRAMPercentage=4.16667 -J-Dtest.boot.jdk=/opt/mach5/mesos/work_dir/jib-master/install/jdk/25/37/bundles/linux-x64/jdk-25_linux-x64_bin.tar.gz/jdk-25 -J-Djava.io.tmpdir=/opt/mach5/mesos/work_dir/slaves/da1065b5-7b94-4f0d-85e9-a3a252b9a32e-S87489/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/3e068ddf-893f-42da-b039-13dbd4046923/runs/df3016b4-267e-4ebd-9771-95a5e4926668/testoutput/test-support/jtreg_open_test_hotspot_jtreg_tier1_serviceability/tmp -J-XX:AOTCache=/opt/mach5/mesos/work_dir/slaves/da1065b5-7b94-4f0d-85e9-a3a252b9a32e-S87489/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/3e068ddf-893f-42da-b039-13dbd4046923/runs/df3016b4-267e-4ebd-9771-95a5e4926668/./testoutput/test-support/jtreg_open_test_hotspot_jtreg_tier1_serviceability/aot/jdk.aotcache -Dtest.compiler.opts= -Dtest.java.opts=-XX:+AOTClassLinking -XX:+UseParallelGC -Dtest.jdk=/opt/mach5/mesos/work_dir/jib-master/install/jdk-27+7-517/linux-x64-debug.jdk/jdk-27/fastdebug -Dcompile.jdk=/opt/mach5/mesos/work_dir/jib-master/install/jdk-27+7-517/linux-x64-debug.jdk/jdk-27/fastdebug -Dtest.timeout.factor=4.0 -Dtest.nativepath=/opt/mach5/mesos/work_dir/jib-master/install/jdk-27+7-517/linux-x64-debug.test/hotspot/jtreg/native -Dtest.root=/opt/mach5/mesos/work_dir/jib-master/install/jdk-27+7-517/src.full/open/test/hotspot/jtreg -Dtest.name=serviceability/jvmti/vthread/ThreadStateTest2/ThreadStateTest2.java -Dtest.verbose=Verbose[p=BRIEF,f=FULL,e=FULL,t=true,m=false] -Dtest.file=/opt/mach5/mesos/work_dir/jib-master/install/jdk-27+7-517/src.full/open/test/hotspot/jtreg/serviceability/jvmti/vthread/ThreadStateTest2/ThreadStateTest2.java -Dtest.main.class=ThreadStateTest2 -Dtest.src=/opt/mach5/mesos/work_dir/jib-master/install/jdk-27+7-517/src.full/open/test/hotspot/jtreg/serviceability/jvmti/vthread/ThreadStateTest2 -Dtest.src.path=/opt/mach5/mesos/work_dir/jib-master/install/jdk-27+7-517/src.full/open/test/hotspot/jtreg/serviceability/jvmti/vthread/ThreadStateTest2:/opt/mach5/mesos/work_dir/jib-master/install/jdk-27+7-517/src.full/open/test/lib -Dtest.classes=/opt/mach5/mesos/work_dir/slaves/da1065b5-7b94-4f0d-85e9-a3a252b9a32e-S87489/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/3e068ddf-893f-42da-b039-13dbd4046923/runs/df3016b4-267e-4ebd-9771-95a5e4926668/testoutput/test-support/jtreg_open_test_hotspot_jtreg_tier1_serviceability/classes/3/serviceability/jvmti/vthread/ThreadStateTest2/ThreadStateTest2.d -Dtest.class.path=/opt/mach5/mesos/work_dir/slaves/da1065b5-7b94-4f0d-85e9-a3a252b9a32e-S87489/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/3e068ddf-893f-42da-b039-13dbd4046923/runs/df3016b4-267e-4ebd-9771-95a5e4926668/testoutput/test-support/jtreg_open_test_hotspot_jtreg_tier1_serviceability/classes/3/serviceability/jvmti/vthread/ThreadStateTest2/ThreadStateTest2.d:/opt/mach5/mesos/work_dir/slaves/da1065b5-7b94-4f0d-85e9-a3a252b9a32e-S87489/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/3e068ddf-893f-42da-b039-13dbd4046923/runs/df3016b4-267e-4ebd-9771-95a5e4926668/testoutput/test-support/jtreg_open_test_hotspot_jtreg_tier1_serviceability/classes/3/serviceability/jvmti/vthread/ThreadStateTest2/ThreadStateTest2.d/test/lib -Dtest.class.path.prefix=/opt/mach5/mesos/work_dir/slaves/da1065b5-7b94-4f0d-85e9-a3a252b9a32e-S87489/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/3e068ddf-893f-42da-b039-13dbd4046923/runs/df3016b4-267e-4ebd-9771-95a5e4926668/testoutput/test-support/jtreg_open_test_hotspot_jtreg_tier1_serviceability/classes/3/serviceability/jvmti/vthread/ThreadStateTest2/ThreadStateTest2.d:/opt/mach5/mesos/work_dir/jib-master/install/jdk-27+7-517/src.full/open/test/hotspot/jtreg/serviceability/jvmti/vthread/ThreadStateTest2:/opt/mach5/mesos/work_dir/slaves/da1065b5-7b94-4f0d-85e9-a3a252b9a32e-S87489/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/3e068ddf-893f-42da-b039-13dbd4046923/runs/df3016b4-267e-4ebd-9771-95a5e4926668/testoutput/test-support/jtreg_open_test_hotspot_jtreg_tier1_serviceability/classes/3/serviceability/jvmti/vthread/ThreadStateTest2/ThreadStateTest2.d/test/lib -Dtest.modules=java.base/java.lang:+open --add-modules=java.base --add-exports=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED -XX:MaxRAMPercentage=4.16667 -Dtest.boot.jdk=/opt/mach5/mesos/work_dir/jib-master/install/jdk/25/37/bundles/linux-x64/jdk-25_linux-x64_bin.tar.gz/jdk-25 -Djava.io.tmpdir=/opt/mach5/mesos/work_dir/slaves/da1065b5-7b94-4f0d-85e9-a3a252b9a32e-S87489/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/3e068ddf-893f-42da-b039-13dbd4046923/runs/df3016b4-267e-4ebd-9771-95a5e4926668/testoutput/test-support/jtreg_open_test_hotspot_jtreg_tier1_serviceability/tmp -XX:AOTCache=/opt/mach5/mesos/work_dir/slaves/da1065b5-7b94-4f0d-85e9-a3a252b9a32e-S87489/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/3e068ddf-893f-42da-b039-13dbd4046923/runs/df3016b4-267e-4ebd-9771-95a5e4926668/./testoutput/test-support/jtreg_open_test_hotspot_jtreg_tier1_serviceability/aot/jdk.aotcache -XX:+AOTClassLinking -XX:+UseParallelGC -Djava.library.path=/opt/mach5/mesos/work_dir/jib-master/install/jdk-27+7-517/linux-x64-debug.test/hotspot/jtreg/native -agentlib:ThreadStateTest2 com.sun.javatest.regtest.agent.MainWrapper /opt/mach5/mesos/work_dir/slaves/da1065b5-7b94-4f0d-85e9-a3a252b9a32e-S87489/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/3e068ddf-893f-42da-b039-13dbd4046923/runs/df3016b4-267e-4ebd-9771-95a5e4926668/testoutput/test-support/jtreg_open_test_hotspot_jtreg_tier1_serviceability/serviceability/jvmti/vthread/ThreadStateTest2/ThreadStateTest2.d/main.0.jta

      Host: AMD EPYC 9J14 96-Core Processor, 12 cores, 23G, Oracle Linux Server release 8.10
      Time: Fri Jan 23 12:47:41 2026 UTC elapsed time: 0.486439 seconds (0d 0h 0m 0s)

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

      Current thread (0x00007f3670022510): JavaThread "pool-1-thread-2" [_thread_in_vm, id=1494894, stack(0x00007f36a98da000,0x00007f36a99da000) (1024K)] _threads_hazard_ptr=0x00007f3664005810, _nested_threads_hazard_ptr_cnt=0

      Stack: [0x00007f36a98da000,0x00007f36a99da000], sp=0x00007f36a99d2a40, free space=994k
      Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
      V [libjvm.so+0xc0d659] Continuation::try_preempt(JavaThread*, oop)+0xfe9 (continuation.cpp:89)
      V [libjvm.so+0x17b33c9] ObjectMonitor::enter_with_contention_mark(JavaThread*, ObjectMonitorContentionMark&)+0x219 (objectMonitor.cpp:568)
      V [libjvm.so+0x17b4651] ObjectMonitor::enter(JavaThread*)+0x81 (objectMonitor.cpp:524)
      V [libjvm.so+0x1b4960c] ObjectSynchronizer::inflate_and_enter(oop, BasicLock*, ObjectSynchronizer::InflateCause, JavaThread*, JavaThread*)+0x46c (synchronizer.cpp:2149)
      V [libjvm.so+0x1b4a870] ObjectSynchronizer::enter(Handle, BasicLock*, JavaThread*)+0x590 (synchronizer.cpp:1846)
      V [libjvm.so+0x1b4b197] ObjectLocker::ObjectLocker(Handle, JavaThread*)+0xd7 (synchronizer.cpp:477)
      V [libjvm.so+0x1091976] InstanceKlass::initialize_impl(JavaThread*)+0x186 (instanceKlass.cpp:1247)
      V [libjvm.so+0x1092ace] InstanceKlass::initialize(JavaThread*)+0x9e (instanceKlass.cpp:848)
      V [libjvm.so+0x154439f] LinkResolver::resolve_static_call(CallInfo&, LinkInfo const&, ClassInitMode, JavaThread*)+0x22f (linkResolver.cpp:1120)
      V [libjvm.so+0x1544701] LinkResolver::resolve_invokestatic(CallInfo&, constantPoolHandle const&, int, ClassInitMode, JavaThread*)+0x231 (linkResolver.cpp:1756)
      V [libjvm.so+0x1548c0b] LinkResolver::resolve_invoke(CallInfo&, Handle, constantPoolHandle const&, int, Bytecodes::Code, ClassInitMode, JavaThread*)+0x10b (linkResolver.cpp:1715)
      V [libjvm.so+0x19c0da7] SharedRuntime::find_callee_info_helper(vframeStream&, Bytecodes::Code&, CallInfo&, JavaThread*)+0x6b7 (linkResolver.hpp:365)
      V [libjvm.so+0x19c727d] SharedRuntime::resolve_helper(bool, bool, JavaThread*)+0x24d (sharedRuntime.cpp:1195)
      V [libjvm.so+0x19c79ee] SharedRuntime::resolve_static_call_C(JavaThread*)+0x7e (sharedRuntime.cpp:1594)
      v ~RuntimeStub::resolve_static_call_blob (shared runtime) 0x00007f36bf92fd49
      J 286 c1 java.util.concurrent.locks.AbstractQueuedSynchronizer.signalNext(Ljava/util/concurrent/locks/AbstractQueuedSynchronizer$Node;)V java.base@27-ea (34 bytes) @ 0x00007f36b830ff14 [0x00007f36b830fd80+0x0000000000000194]
      J 294 c1 java.util.concurrent.locks.ReentrantLock.unlock()V java.base@27-ea (10 bytes) @ 0x00007f36b8310f74 [0x00007f36b8310d80+0x00000000000001f4]
      j java.util.concurrent.LinkedBlockingQueue.offer(Ljava/lang/Object;)Z+105 java.base@27-ea
      j java.util.concurrent.ThreadPoolExecutor.execute(Ljava/lang/Runnable;)V+57 java.base@27-ea
      j java.lang.VirtualThread.submit(Ljava/util/concurrent/Executor;Ljava/lang/Runnable;)V+26 java.base@27-ea
      j java.lang.VirtualThread.submitRunContinuation(Ljava/util/concurrent/Executor;Z)V+24 java.base@27-ea
      j java.lang.VirtualThread.submitRunContinuation()V+6 java.base@27-ea
      j java.lang.VirtualThread.unpark(Z)V+53 java.base@27-ea
      j java.lang.VirtualThread.unpark()V+2 java.base@27-ea
      j java.lang.VirtualThread.interrupt()V+91 java.base@27-ea
      v ~StubRoutines::call_stub_stub (stub gen) 0x00007f36bf8185fd
      V [libjvm.so+0x10e978e] JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, JavaThread*)+0x50e (javaCalls.cpp:416)
      V [libjvm.so+0x10e9ed3] JavaCalls::call_virtual(JavaValue*, Klass*, Symbol*, Symbol*, JavaCallArguments*, JavaThread*)+0x313 (javaCalls.cpp:324)
      V [libjvm.so+0x10ea513] JavaCalls::call_virtual(JavaValue*, Handle, Klass*, Symbol*, Symbol*, JavaThread*)+0xb3 (javaCalls.cpp:186)
      V [libjvm.so+0x144ae3d] JvmtiEnv::InterruptThread(_jobject*)+0x31d (jvmtiEnv.cpp:1253)
      V [libjvm.so+0x13f596b] jvmti_InterruptThread+0x1ab (jvmtiEnter.cpp:823)
      C [libThreadStateTest2.so+0x2458] Java_ThreadStateTest2_testInterruptThread+0x58 (jvmti.h:1919)
      j ThreadStateTest2.testInterruptThread(Ljava/lang/Thread;)V+0
      j ThreadStateTest2.lambda$new$2()V+23
      J 153 jdk.internal.vm.Continuation.enterSpecial(Ljdk/internal/vm/Continuation;ZZ)V java.base@27-ea (0 bytes) @ 0x00007f36bfdb445b [0x00007f36bfdb4300+0x000000000000015b]
      j jdk.internal.vm.Continuation.run()V+152 java.base@27-ea
      j java.lang.VirtualThread.runContinuation()V+100 java.base@27-ea
      j java.lang.VirtualThread$$Lambda+0x000000007a0ea970.run()V+4 java.base@27-ea
      j java.util.concurrent.ThreadPoolExecutor.runWorker(Ljava/util/concurrent/ThreadPoolExecutor$Worker;)V+92 java.base@27-ea
      j java.util.concurrent.ThreadPoolExecutor$Worker.run()V+5 java.base@27-ea
      j java.lang.Thread.runWith(Ljava/lang/Object;Ljava/lang/Runnable;)V+5 java.base@27-ea
      j java.lang.Thread.run()V+19 java.base@27-ea
      v ~StubRoutines::call_stub_stub (stub gen) 0x00007f36bf8185fd
      V [libjvm.so+0x10e978e] JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, JavaThread*)+0x50e (javaCalls.cpp:416)
      V [libjvm.so+0x10e9ed3] JavaCalls::call_virtual(JavaValue*, Klass*, Symbol*, Symbol*, JavaCallArguments*, JavaThread*)+0x313 (javaCalls.cpp:324)
      V [libjvm.so+0x10ea513] JavaCalls::call_virtual(JavaValue*, Handle, Klass*, Symbol*, Symbol*, JavaThread*)+0xb3 (javaCalls.cpp:186)
      V [libjvm.so+0x12a6cd3] thread_entry(JavaThread*, JavaThread*)+0xe3 (jvm.cpp:2701)
      V [libjvm.so+0x112875b] JavaThread::thread_main_inner()+0x13b (javaThread.cpp:776)
      V [libjvm.so+0x1bb8706] Thread::call_run()+0xb6 (thread.cpp:243)
      V [libjvm.so+0x180c878] thread_native_entry(Thread*)+0x118 (os_linux.cpp:929)
      Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
      v ~RuntimeStub::resolve_static_call_blob (shared runtime) 0x00007f36bf92fd49
      J 286 c1 java.util.concurrent.locks.AbstractQueuedSynchronizer.signalNext(Ljava/util/concurrent/locks/AbstractQueuedSynchronizer$Node;)V java.base@27-ea (34 bytes) @ 0x00007f36b830ff14 [0x00007f36b830fd80+0x0000000000000194]
      J 294 c1 java.util.concurrent.locks.ReentrantLock.unlock()V java.base@27-ea (10 bytes) @ 0x00007f36b8310f74 [0x00007f36b8310d80+0x00000000000001f4]
      j java.util.concurrent.LinkedBlockingQueue.offer(Ljava/lang/Object;)Z+105 java.base@27-ea
      j java.util.concurrent.ThreadPoolExecutor.execute(Ljava/lang/Runnable;)V+57 java.base@27-ea
      j java.lang.VirtualThread.submit(Ljava/util/concurrent/Executor;Ljava/lang/Runnable;)V+26 java.base@27-ea
      j java.lang.VirtualThread.submitRunContinuation(Ljava/util/concurrent/Executor;Z)V+24 java.base@27-ea
      j java.lang.VirtualThread.submitRunContinuation()V+6 java.base@27-ea
      j java.lang.VirtualThread.unpark(Z)V+53 java.base@27-ea
      j java.lang.VirtualThread.unpark()V+2 java.base@27-ea
      j java.lang.VirtualThread.interrupt()V+91 java.base@27-ea
      v ~StubRoutines::call_stub_stub (stub gen) 0x00007f36bf8185fd
      j ThreadStateTest2.testInterruptThread(Ljava/lang/Thread;)V+0
      j ThreadStateTest2.lambda$new$2()V+23
      J 153 jdk.internal.vm.Continuation.enterSpecial(Ljdk/internal/vm/Continuation;ZZ)V java.base@27-ea (0 bytes) @ 0x00007f36bfdb445b [0x00007f36bfdb4300+0x000000000000015b]
      j jdk.internal.vm.Continuation.run()V+152 java.base@27-ea
      j java.lang.VirtualThread.runContinuation()V+100 java.base@27-ea
      j java.lang.VirtualThread$$Lambda+0x000000007a0ea970.run()V+4 java.base@27-ea
      j java.util.concurrent.ThreadPoolExecutor.runWorker(Ljava/util/concurrent/ThreadPoolExecutor$Worker;)V+92 java.base@27-ea
      j java.util.concurrent.ThreadPoolExecutor$Worker.run()V+5 java.base@27-ea
      j java.lang.Thread.runWith(Ljava/lang/Object;Ljava/lang/Runnable;)V+5 java.base@27-ea
      j java.lang.Thread.run()V+19 java.base@27-ea
      v ~StubRoutines::call_stub_stub (stub gen) 0x00007f36bf8185fd

            Assignee:
            Patricio Chilano Mateo
            Reporter:
            David Holmes
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated: