JDK-8252466 : assert(is_virtual(jt)) failed: invariant in JfrJavaThread::virtual_thread(JavaThread const*)+0x5c
  • Type: Bug
  • Component: hotspot
  • Sub-Component: jfr
  • Affected Version: repo-loom
  • Priority: P2
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2020-08-27
  • Updated: 2020-09-04
  • Resolved: 2020-09-04
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
Other
repo-loomFixed
Related Reports
Relates :  
Description
Kitchensink crashes with 
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (/opt/mach5/mesos/work_dir/slaves/4728e7c1-7e67-490e-be0f-6bbf2a2f33db-S196/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/27077e75-0acd-4a54-8e55-2785ac546555/runs/b7c83f39-267f-48b2-a895-5e0660bfaecb/workspace/open/src/hotspot/share/jfr/support/jfrJavaThread.cpp:132), pid=14078, tid=14123
#  assert(is_virtual(jt)) failed: invariant
#
# JRE version: Java(TM) SE Runtime Environment (16.0+7) (fastdebug build 16-loom+7-119)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 16-loom+7-119, mixed mode, sharing, tiered, compressed oops, g1 gc, linux-amd64)
# Problematic frame:
# V  [libjvm.so+0x11fecac]  JfrJavaThread::virtual_thread(JavaThread const*)+0x5c
#
# 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/4728e7c1-7e67-490e-be0f-6bbf2a2f33db-S123/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/40306bfc-9617-474e-bfb7-f5480f8e2cb1/runs/39d246db-6789-4467-8bf3-654c5a5c334c/testoutput/test-support/jtreg_closed_test_hotspot_jtreg_applications_kitchensink_Kitchensink_java/scratch/0/core.14078)
#
# JFR recording file will be written. Location: /opt/mach5/mesos/work_dir/slaves/4728e7c1-7e67-490e-be0f-6bbf2a2f33db-S123/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/40306bfc-9617-474e-bfb7-f5480f8e2cb1/runs/39d246db-6789-4467-8bf3-654c5a5c334c/testoutput/test-support/jtreg_closed_test_hotspot_jtreg_applications_kitchensink_Kitchensink_java/scratch/0/hs_err_pid14078.jfr
#
# 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: -Xbootclasspath/a:/opt/mach5/mesos/work_dir/slaves/4728e7c1-7e67-490e-be0f-6bbf2a2f33db-S123/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/40306bfc-9617-474e-bfb7-f5480f8e2cb1/runs/39d246db-6789-4467-8bf3-654c5a5c334c/testoutput/test-support/jtreg_closed_test_hotspot_jtreg_applications_kitchensink_Kitchensink_java/scratch/0/wb.jar -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI -XX:MaxRAMPercentage=6 -Djava.io.tmpdir=/opt/mach5/mesos/work_dir/slaves/4728e7c1-7e67-490e-be0f-6bbf2a2f33db-S123/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/40306bfc-9617-474e-bfb7-f5480f8e2cb1/runs/39d246db-6789-4467-8bf3-654c5a5c334c/testoutput/test-support/jtreg_closed_test_hotspot_jtreg_applications_kitchensink_Kitchensink_java/tmp -XX:+UseG1GC -XX:MaxRAMPercentage=50 -XX:MaxMetaspaceSize=512m -XX:+HeapDumpOnOutOfMemoryError -XX:+CrashOnOutOfMemoryError -Djava.net.preferIPv6Addresses=false -XX:+DisplayVMOutputToStderr -Xlog:gc*,gc+heap=debug:gc.log:uptime,timemillis,level,tags -XX:+DisableExplicitGC -XX:+StartAttachListener --illegal-access=deny --add-modules=jdk.incubator.foreign --add-exports=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-exports=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED --add-exports=java.xml/com.sun.org.apache.xerces.internal.parsers=ALL-UNNAMED --add-exports=java.xml/com.sun.org.apache.xerces.internal.util=ALL-UNNAMED -Djava.io.tmpdir=/opt/mach5/mesos/work_dir/slaves/4728e7c1-7e67-490e-be0f-6bbf2a2f33db-S123/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/40306bfc-9617-474e-bfb7-f5480f8e2cb1/runs/39d246db-6789-4467-8bf3-654c5a5c334c/testoutput/test-support/jtreg_closed_test_hotspot_jtreg_applications_kitchensink_Kitchensink_java/scratch/0/java.io.tmpdir -Duser.home=/opt/mach5/mesos/work_dir/slaves/4728e7c1-7e67-490e-be0f-6bbf2a2f33db-S123/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/40306bfc-9617-474e-bfb7-f5480f8e2cb1/runs/39d246db-6789-4467-8bf3-654c5a5c334c/testoutput/test-support/jtreg_closed_test_hotspot_jtreg_applications_kitchensink_Kitchensink_java/scratch/0/user.home -agentpath:/opt/mach5/mesos/work_dir/jib-master/install/jdk-16-loom+7-119/linux-x64-debug.test/hotspot/jtreg/native/libJvmtiStressModule.so -XX:NativeMemoryTracking=detail -Djdk.test.lib.random.seed=1300408101853323561 applications.kitchensink.process.stress.Main /opt/mach5/mesos/work_dir/slaves/4728e7c1-7e67-490e-be0f-6bbf2a2f33db-S123/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/40306bfc-9617-474e-bfb7-f5480f8e2cb1/runs/39d246db-6789-4467-8bf3-654c5a5c334c/testoutput/test-support/jtreg_closed_test_hotspot_jtreg_applications_kitchensink_Kitchensink_java/scratch/0/kitchensink.final.properties

Host:  Intel(R) Xeon(R) Platinum 8167M CPU @ 2.00GHz, 8 cores, 58G, Oracle Linux Server release 7.8
Time: Thu Aug 27 03:02:22 2020 UTC elapsed time: 45.734838 seconds (0d 0h 0m 45s)

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

Current thread (0x00007f1278682100):  JavaThread "ExceptionStressModule" [_thread_in_vm, id=14123, stack(0x00007f11cbeff000,0x00007f11cc000000)]

Stack: [0x00007f11cbeff000,0x00007f11cc000000],  sp=0x00007f11cbffd830,  free space=1018k
Thread 0x00007f1278682100 [14123]
Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0x11fecac]  JfrJavaThread::virtual_thread(JavaThread const*)+0x5c
V  [libjvm.so+0x11ef929]  get_event_writer_impl(Thread*, unsigned long, bool)+0x129

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
J 6486 c2 jdk.jfr.internal.handlers.EventHandler2358_1598497301028-14078.write(JJLjava/lang/String;Ljava/lang/Class;)V jdk.jfr@16-loom (72 bytes) @ 0x00007f1268c22580 [0x00007f1268c224a0+0x00000000000000e0]
J 5241 c1 jdk.jfr.internal.instrument.ThrowableTracer.traceError(Ljava/lang/Error;Ljava/lang/String;)V jdk.jfr@16-loom (70 bytes) @ 0x00007f12617d443c [0x00007f12617d4300+0x000000000000013c]
J 5319 c1 java.lang.NoClassDefFoundError.<init>(Ljava/lang/String;)V java.base@16-loom (6 bytes) @ 0x00007f12617b427c [0x00007f12617b41e0+0x000000000000009c]
v  ~StubRoutines::call_stub 0x00007f1260bb89ca
J 1440  java.lang.Class.forName0(Ljava/lang/String;ZLjava/lang/ClassLoader;Ljava/lang/Class;)Ljava/lang/Class; java.base@16-loom (0 bytes) @ 0x00007f126874eb42 [0x00007f126874ea80+0x00000000000000c2]
J 1705 c1 java.lang.Class.forName(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class; java.base@16-loom (47 bytes) @ 0x00007f1261439c24 [0x00007f1261439800+0x0000000000000424]
J 5318 c1 applications.kitchensink.process.stress.modules.ExceptionStressModule.testErrorInClinitInitialization()V (63 bytes) @ 0x00007f12617aef94 [0x00007f12617aea00+0x0000000000000594]
j  applications.kitchensink.process.stress.modules.ExceptionStressModule.runOneIteration()V+29
j  applications.kitchensink.process.stress.modules.ExceptionStressModule.execute()V+20
j  applications.kitchensink.process.stress.modules.StressModule.run()V+109
j  java.lang.Thread.run()V+20 java.base@16-loom
v  ~StubRoutines::call_stub 0x00007f1260bb89ca
Register to memory mapping:

RAX=0x00007f1281e34000 points into unknown readable memory: 0x0000000000000058 | 58 00 00 00 00 00 00 00
RBX=0x00007f1278682100 is a thread
RCX=0x00007f1280d710d8: <offset 0x0000000001f410d8> in /opt/mach5/mesos/work_dir/jib-master/install/jdk-16-loom+7-119/linux-x64-debug.jdk/jdk-16/fastdebug/lib/server/libjvm.so at 0x00007f127ee30000
RDX=0x00007f1280d966f6: <offset 0x0000000001f666f6> in /opt/mach5/mesos/work_dir/jib-master/install/jdk-16-loom+7-119/linux-x64-debug.jdk/jdk-16/fastdebug/lib/server/libjvm.so at 0x00007f127ee30000
RSP=0x00007f11cbffd830 is pointing into the stack for thread: 0x00007f1278682100
RBP=0x00007f11cbffd840 is pointing into the stack for thread: 0x00007f1278682100
RSI=0x0000000000000084 is an unknown value
RDI=0x00007f1280c897b8: <offset 0x0000000001e597b8> in /opt/mach5/mesos/work_dir/jib-master/install/jdk-16-loom+7-119/linux-x64-debug.jdk/jdk-16/fastdebug/lib/server/libjvm.so at 0x00007f127ee30000
R8 =0x00000006df8e3a90 is an oop: java.lang.String 
{0x00000006df8e3a90} - klass: 'java/lang/String'
 - string: "Could not initialize class applications.kitchensink.process.stress.modules.ErrorInClinit"
R9 =0x00000007fef04880 is an oop: java.lang.Class 
{0x00000007fef04880} - klass: 'java/lang/Class'
 - ---- fields (total size 15 words):
 - private volatile transient 'classRedefinedCount' 'I' @12  2
 - private volatile transient strict 'cachedConstructor' 'Ljava/lang/reflect/Constructor;' @40  NULL (0)
 - private transient 'name' 'Ljava/lang/String;' @44  "java.lang.NoClassDefFoundError"{0x00000000b48fa108} (1691f421)
 - private transient 'module' 'Ljava/lang/Module;' @48  a 'java/lang/Module'{0x00000000b4159cb0} (1682b396)
 - private final 'classLoader' 'Ljava/lang/ClassLoader;' @52  NULL (0)
 - private transient 'classData' 'Ljava/lang/Object;' @56  NULL (0)
 - private transient 'packageName' 'Ljava/lang/String;' @60  "java.lang"{0x00000007ff013c48} (ffe02789)
 - private final strict 'componentType' 'Ljava/lang/Class;' @64  NULL (0)
 - private volatile transient strict 'reflectionData' 'Ljava/lang/ref/SoftReference;' @68  NULL (0)
 - private volatile transient 'genericInfo' 'Lsun/reflect/generics/repository/ClassRepository;' @72  NULL (0)
 - private volatile transient strict 'enumConstants' '[Ljava/lang/Object;' @76  NULL (0)
 - private volatile transient strict 'enumConstantDirectory' 'Ljava/util/Map;' @80  NULL (0)
 - private volatile transient 'annotationData' 'Ljava/lang/Class$AnnotationData;' @84  NULL (0)
 - private volatile transient 'annotationType' 'Lsun/reflect/annotation/AnnotationType;' @88  NULL (0)
 - transient 'classValueMap' 'Ljava/lang/ClassValue$ClassValueMap;' @92  NULL (0)
 - signature: Ljava/lang/NoClassDefFoundError;
 - fake entry for mirror: 'java/lang/NoClassDefFoundError'
 - fake entry for array: NULL
 - fake entry for oop_size: 15
 - fake entry for static_oop_field_count: 0
 - private static final 'serialVersionUID' 'J' @112  9095859863287012458 (8df49c6a 7e3afc5a)
R10=0x0 is NULL
R11=0x0000ffffffffffff is an unknown value
R12=0x00007f1278682100 is a thread
R13=0x00007f11cbffd858 is pointing into the stack for thread: 0x00007f1278682100
R14=0x00007f12810bea58: <offset 0x000000000228ea58> in /opt/mach5/mesos/work_dir/jib-master/install/jdk-16-loom+7-119/linux-x64-debug.jdk/jdk-16/fastdebug/lib/server/libjvm.so at 0x00007f127ee30000
R15=0x00007f11cbffd858 is pointing into the stack for thread: 0x00007f1278682100


Registers:
RAX=0x00007f1281e34000, RBX=0x00007f1278682100, RCX=0x00007f1280d710d8, RDX=0x00007f1280d966f6
RSP=0x00007f11cbffd830, RBP=0x00007f11cbffd840, RSI=0x0000000000000084, RDI=0x00007f1280c897b8
R8 =0x00000006df8e3a90, R9 =0x00000007fef04880, R10=0x0000000000000000, R11=0x0000ffffffffffff
R12=0x00007f1278682100, R13=0x00007f11cbffd858, R14=0x00007f12810bea58, R15=0x00007f11cbffd858
RIP=0x00007f128002ecac, EFLAGS=0x0000000000010246, CSGSFS=0x002b000000000033, ERR=0x0000000000000006
  TRAPNO=0x000000000000000e

Top of Stack: (sp=0x00007f11cbffd830)
0x00007f11cbffd830:   00007f1278682100 0000000000000010
0x00007f11cbffd840:   00007f11cbffd8a0 00007f128001f929
0x00007f11cbffd850:   0000000000000000 00007f12786827f8
0x00007f11cbffd860:   00007f12810bea58 00007f1278682100 

Instructions: (pc=0x00007f128002ecac)
0x00007f128002ebac:   41 0d 01 48 8d 0d 22 25 d4 00 4c 8d 75 d0 be 7e
0x00007f128002ebbc:   00 00 00 48 8d 15 d0 72 d6 00 48 8d 3d eb ab c5
0x00007f128002ebcc:   00 49 8b 45 00 c6 00 58 31 c0 e8 e5 da b4 ff e8
0x00007f128002ebdc:   30 93 68 00 49 8b 45 00 be 5b 00 00 00 48 8d 0d
0x00007f128002ebec:   e8 24 d4 00 48 8d 15 9f 72 d6 00 48 8d 3d ba ab
0x00007f128002ebfc:   c5 00 c6 00 58 31 c0 e8 b8 da b4 ff e8 03 93 68
0x00007f128002ec0c:   00 31 f6 4c 89 f7 e8 89 5e 9a 00 49 8b 45 00 be
0x00007f128002ec1c:   56 00 00 00 48 8d 0d b1 24 d4 00 48 8d 15 68 72
0x00007f128002ec2c:   d6 00 48 8d 3d 83 ab c5 00 c6 00 58 31 c0 e8 81
0x00007f128002ec3c:   da b4 ff e8 cc 92 68 00 e9 fe fe ff ff 90 66 0f
0x00007f128002ec4c:   1f 44 00 00 55 48 89 e5 41 55 49 89 fd 48 89 f7
0x00007f128002ec5c:   41 54 49 89 f4 e8 ba fe ff ff 84 c0 74 1e 4d 85
0x00007f128002ec6c:   e4 74 51 4c 89 e6 4c 89 ef e8 d6 66 9a 00 4c 89
0x00007f128002ec7c:   e8 41 5c 41 5d 5d c3 0f 1f 44 00 00 48 8d 05 49
0x00007f128002ec8c:   40 0d 01 48 8d 0d 42 24 d4 00 48 8d 15 59 7a d6
0x00007f128002ec9c:   00 be 84 00 00 00 48 8d 3d 0f ab c5 00 48 8b 00
0x00007f128002ecac:   c6 00 58 31 c0 e8 0a da b4 ff e8 55 92 68 00 4d
0x00007f128002ecbc:   85 e4 75 af 48 8d 05 11 40 0d 01 48 8d 0d 0a 24
0x00007f128002eccc:   d4 00 48 8d 15 c1 71 d6 00 be 56 00 00 00 48 8d
0x00007f128002ecdc:   3d d7 aa c5 00 48 8b 00 c6 00 58 31 c0 e8 d2 d9
0x00007f128002ecec:   b4 ff e8 1d 92 68 00 e9 77 ff ff ff 0f 1f 84 00
0x00007f128002ecfc:   00 00 00 00 90 00 00 00 00 00 00 00 00 00 00 00
0x00007f128002ed0c:   00 00 00 00 55 48 89 e5 41 55 41 54 4c 8d ad a0
0x00007f128002ed1c:   fe ff ff 49 89 fc 48 89 f7 53 48 89 f3 48 81 ec
0x00007f128002ed2c:   58 01 00 00 e8 2b a4 ff ff 48 8d b5 90 fe ff ff
0x00007f128002ed3c:   49 89 d9 4c 8d 05 d1 73 d6 00 48 8d 0d c3 73 d6
0x00007f128002ed4c:   00 4c 89 ef 48 8d 15 bd 79 d6 00 c7 85 90 fe ff
0x00007f128002ed5c:   ff 0c 00 00 00 e8 aa 2e ff ff 48 83 7b 08 00 74
0x00007f128002ed6c:   2b 48 8d 05 a6 3d 18 01 49 c7 04 24 00 00 00 00
0x00007f128002ed7c:   80 38 00 75 47 48 81 c4 58 01 00 00 4c 89 e0 5b
0x00007f128002ed8c:   41 5c 41 5d 5d c3 66 0f 1f 44 00 00 48 89 de 4c
0x00007f128002ed9c:   89 ef e8 1d aa ff ff 48 83 7b 08 00 75 c3 48 8b 


Stack slot to memory mapping:
stack at sp + 0 slots: 0x00007f1278682100 is a thread
stack at sp + 1 slots: 0x0000000000000010 is an unknown value
stack at sp + 2 slots: 0x00007f11cbffd8a0 is pointing into the stack for thread: 0x00007f1278682100
stack at sp + 3 slots: 0x00007f128001f929: <offset 0x00000000011ef929> in /opt/mach5/mesos/work_dir/jib-master/install/jdk-16-loom+7-119/linux-x64-debug.jdk/jdk-16/fastdebug/lib/server/libjvm.so at 0x00007f127ee30000
stack at sp + 4 slots: 0x0 is NULL
stack at sp + 5 slots: 0x00007f12786827f8 points into unknown readable memory: 0x00000001b3defba0 | a0 fb de b3 01 00 00 00
stack at sp + 6 slots: 0x00007f12810bea58: <offset 0x000000000228ea58> in /opt/mach5/mesos/work_dir/jib-master/install/jdk-16-loom+7-119/linux-x64-debug.jdk/jdk-16/fastdebug/lib/server/libjvm.so at 0x00007f127ee30000
stack at sp + 7 slots: 0x00007f1278682100 is a thread


Comments
https://github.com/openjdk/loom/commit/d16ca623fe36cdb84f2fc95c93195fa2a0f64497
04-09-2020