JDK-8368806 : [jep516] "assert(is_loaded()) failed: must be loaded" with "-XX:+AOTClassLinking -XX:+SerialGC"
  • Type: Bug
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: 26
  • Priority: P3
  • Status: Closed
  • Resolution: Not an Issue
  • Submitted: 2025-09-27
  • Updated: 2025-11-03
  • Resolved: 2025-11-03
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
tbdResolved
Related Reports
Relates :  
Description
Another crash occured during jep516 (branch 8326035_JEP_object_streaming_v4) testing is

# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (/home/katya/work/JavaSE/Hotspot/ws/git/jdk.jep516/open/src/hotspot/share/oops/instanceKlass.cpp:896), pid=25575, tid=25578
#  assert(is_loaded()) failed: must be loaded
#
# Problematic frame:
# V  [libjvm.so+0x109d7cf]  InstanceKlass::link_class(JavaThread*)+0x5f
#
# 

Command Line: -Dtidy=/home/katya/jib-data/install/jpg/infra/builddeps/tidy-html-linux_x64/5.9.20+1/tidy-html-linux_x64-5.9.20+1.tar.gz/installtidylinux/bin/tidy -XX:MaxRAMPercentage=3.125 -Dtest.boot.jdk=/home/katya/jib-data/install/jdk/24/36/bundles/linux-x64/jdk-24_linux-x64_bin.tar.gz/jdk-24 -Djava.io.tmpdir=/home/katya/work/JavaSE/Hotspot/ws/git/jdk.jep516/build/linux-x64/test-support/jtreg_open_test_hotspot_jtreg_runtime_cds_appcds_SharedArchiveConsistency_java/tmp -XX:+AOTClassLinking -XX:+UseSerialGC -Xshare:on -XX:SharedArchiveFile=/home/katya/work/JavaSE/Hotspot/ws/git/jdk.jep516/build/linux-x64/test-support/jtreg_open_test_hotspot_jtreg_runtime_cds_appcds_SharedArchiveConsistency_java/scratch/0/09-hp-20h13m44s151.jsa -Dtest.timeout.factor=1.0 -Xlog:cds -XX:+VerifySharedSpaces Hello

Host: olegbox, Intel(R) Xeon(R) CPU E5-2630 0 @ 2.30GHz, 24 cores, 15G, Ubuntu 16.04.6 LTS
Time: Fri Sep 26 20:13:44 2025 PDT elapsed time: 0.130754 seconds (0d 0h 0m 0s)

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

Current thread (0x0000151a3002fb00):  JavaThread "Unknown thread" [_thread_in_vm, id=25578, stack(0x0000151a390ef000,0x0000151a391f0000) (1028K)]

Stack: [0x0000151a390ef000,0x0000151a391f0000],  sp=0x0000151a391ec340,  free space=1012k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0x109d7cf]  InstanceKlass::link_class(JavaThread*)+0x5f  (instanceKlass.cpp:896)
V  [libjvm.so+0x109f979]  InstanceKlass::initialize_impl(JavaThread*)+0x79  (instanceKlass.cpp:1182)
V  [libjvm.so+0x10a099e]  InstanceKlass::initialize(JavaThread*)+0x9e  (instanceKlass.cpp:813)
V  [libjvm.so+0x10df837]  InterpreterRuntime::_new(JavaThread*, ConstantPool*, int)+0x167  (interpreterRuntime.cpp:222)
j  java.lang.String.<clinit>()V+11 java.base
v  ~StubRoutines::Stub Generator call_stub_stub 0x0000151a1f9983fd
V  [libjvm.so+0x10fa961]  JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, JavaThread*)+0x4f1  (javaCalls.cpp:415)
V  [libjvm.so+0x109925b]  InstanceKlass::call_class_initializer(JavaThread*)+0x3cb  (instanceKlass.cpp:1706)
V  [libjvm.so+0x10a02f7]  InstanceKlass::initialize_impl(JavaThread*)+0x9f7  (instanceKlass.cpp:1314)
V  [libjvm.so+0x10a099e]  InstanceKlass::initialize(JavaThread*)+0x9e  (instanceKlass.cpp:813)
V  [libjvm.so+0x1bcf8ee]  initialize_class(Symbol*, JavaThread*)+0x6e  (threads.cpp:128)
V  [libjvm.so+0x1bd17b5]  Threads::initialize_java_lang_classes(JavaThread*, JavaThread*)+0xb5  (threads.cpp:349)
V  [libjvm.so+0x1bd5a71]  Threads::create_vm(JavaVMInitArgs*, bool*)+0x5d1  (threads.cpp:691)
V  [libjvm.so+0x125d654]  JNI_CreateJavaVM+0x54  (jni.cpp:3587)
C  [libjli.so+0x3e7f]  JavaMain+0x8f  (java.c:1506)
C  [libjli.so+0x8099]  ThreadJavaMain+0x9  (java_md.c:646)
Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j  java.lang.String.<clinit>()V+11 java.base
v  ~StubRoutines::Stub Generator call_stub_stub 0x0000151a1f9983fd


The failed test is runtime/cds/appcds/SharedArchiveConsistency.java.
No failure in jdk master.

Steps to reproduce:
> jib.sh make -- run-test TEST="runtime/cds/appcds/SharedArchiveConsistency.java" TEST_VM_OPTS="-XX:+AOTClassLinking -XX:+UseSerialGC"
Comments
Fixed in latest PR
03-11-2025