-
Bug
-
Resolution: Fixed
-
P2
-
19
-
b11
-
Verified
compiler/arguments/TestCodeEntryAlignment.java fails on AVX512 machines
```
#
# A fatal error has been detected by the Java Runtime Environment:
#
# Internal Error (/home/jvm/jdk/src/hotspot/cpu/x86/assembler_x86.cpp:12699), pid=8048, tid=8049
# assert(code_section->limit() - code_section->end() > src_len) failed: code buffer not large enough
#
# JRE version: (19.0) (fastdebug build )
# Java VM: OpenJDK 64-Bit Server VM (fastdebug 19-internal-adhoc.jvm.jdk, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
# Problematic frame:
# V [libjvm.so+0x689ef4] Assembler::popa()+0xf4
#
```
This can be reproduced by:
- java -XX:+UnlockExperimentalVMOptions -XX:CodeEntryAlignment=16 on AVX512 machine
```
(gdb) bt
#0 0x00007ffff53e01f7 in emit_copy (code_section=0x7ffff48c19e0,
src=0x7ffff003f260 "L\213<$L\213t$\bL\213l$\020L\213d$\030L\213\\$ L\213T$(L\213L$0L\213D$8H\213|$@H\213t$HH\213l$PH\213\\$`H\213T$hH\213L$pH\213D$xH\201Ā",
src_len=81) at /home/jvm/jdk/src/hotspot/cpu/x86/assembler_x86.cpp:12699
#1 0x00007ffff53e02a7 in Assembler::popa (this=0x7ffff0027378) at /home/jvm/jdk/src/hotspot/cpu/x86/assembler_x86.cpp:12706
#2 0x00007ffff5ce7dfc in MacroAssembler::pop_IU_state (this=0x7ffff0027378) at /home/jvm/jdk/src/hotspot/cpu/x86/macroAssembler_x86.cpp:2783
#3 0x00007ffff5ce7d72 in MacroAssembler::pop_CPU_state (this=0x7ffff0027378) at /home/jvm/jdk/src/hotspot/cpu/x86/macroAssembler_x86.cpp:2770
#4 0x00007ffff5f4a261 in RegisterSaver::restore_live_registers (masm=0x7ffff0027378, restore_vectors=false)
at /home/jvm/jdk/src/hotspot/cpu/x86/sharedRuntime_x86_64.cpp:437
#5 0x00007ffff5f53fe6 in SharedRuntime::generate_resolve_blob (
destination=0x7ffff5f3c036 <SharedRuntime::handle_wrong_method(JavaThread*)> "UH\211\345ATSH\201\354\200\023", name=0x7ffff67eeaf0 "wrong_method_stub")
at /home/jvm/jdk/src/hotspot/cpu/x86/sharedRuntime_x86_64.cpp:3058
#6 0x00007ffff5f36f7b in SharedRuntime::generate_stubs () at /home/jvm/jdk/src/hotspot/share/runtime/sharedRuntime.cpp:103
#7 0x00007ffff59570ad in init_globals () at /home/jvm/jdk/src/hotspot/share/runtime/init.cpp:131
#8 0x00007ffff60eed9d in Threads::create_vm (args=0x7ffff48c1e10, canTryAgain=0x7ffff48c1d03) at /home/jvm/jdk/src/hotspot/share/runtime/thread.cpp:2809
#9 0x00007ffff5a53543 in JNI_CreateJavaVM_inner (vm=0x7ffff48c1e68, penv=0x7ffff48c1e70, args=0x7ffff48c1e10) at /home/jvm/jdk/src/hotspot/share/prims/jni.cpp:3613
#10 0x00007ffff5a5389c in JNI_CreateJavaVM (vm=0x7ffff48c1e68, penv=0x7ffff48c1e70, args=0x7ffff48c1e10) at /home/jvm/jdk/src/hotspot/share/prims/jni.cpp:3701
#11 0x00007ffff79b8141 in InitializeJVM (pvm=0x7ffff48c1e68, penv=0x7ffff48c1e70, ifn=0x7ffff48c1ec0) at /home/jvm/jdk/src/java.base/share/native/libjli/java.c:1459
#12 0x00007ffff79b4f39 in JavaMain (_args=0x7fffffffb130) at /home/jvm/jdk/src/java.base/share/native/libjli/java.c:411
#13 0x00007ffff79bba79 in ThreadJavaMain (args=0x7fffffffb130) at /home/jvm/jdk/src/java.base/unix/native/libjli/java_md.c:651
#14 0x00007ffff779cea5 in start_thread () from /lib64/libpthread.so.0
#15 0x00007ffff72c19fd in clone () from /lib64/libc.so.6
(gdb) p code_section->limit()
$1 = (u_char *) 0x7fffd947d0f8 '\314' <repeats 199 times>, <incomplete sequence \314>...
(gdb) p code_section->end()
$2 = (u_char *) 0x7fffd947d0cb '\314' <repeats 199 times>, <incomplete sequence \314>...
(gdb) p 0x7fffd947d0f8 - 0x7fffd947d0cb
$3 = 45
```
```
#
# A fatal error has been detected by the Java Runtime Environment:
#
# Internal Error (/home/jvm/jdk/src/hotspot/cpu/x86/assembler_x86.cpp:12699), pid=8048, tid=8049
# assert(code_section->limit() - code_section->end() > src_len) failed: code buffer not large enough
#
# JRE version: (19.0) (fastdebug build )
# Java VM: OpenJDK 64-Bit Server VM (fastdebug 19-internal-adhoc.jvm.jdk, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
# Problematic frame:
# V [libjvm.so+0x689ef4] Assembler::popa()+0xf4
#
```
This can be reproduced by:
- java -XX:+UnlockExperimentalVMOptions -XX:CodeEntryAlignment=16 on AVX512 machine
```
(gdb) bt
#0 0x00007ffff53e01f7 in emit_copy (code_section=0x7ffff48c19e0,
src=0x7ffff003f260 "L\213<$L\213t$\bL\213l$\020L\213d$\030L\213\\$ L\213T$(L\213L$0L\213D$8H\213|$@H\213t$HH\213l$PH\213\\$`H\213T$hH\213L$pH\213D$xH\201Ā",
src_len=81) at /home/jvm/jdk/src/hotspot/cpu/x86/assembler_x86.cpp:12699
#1 0x00007ffff53e02a7 in Assembler::popa (this=0x7ffff0027378) at /home/jvm/jdk/src/hotspot/cpu/x86/assembler_x86.cpp:12706
#2 0x00007ffff5ce7dfc in MacroAssembler::pop_IU_state (this=0x7ffff0027378) at /home/jvm/jdk/src/hotspot/cpu/x86/macroAssembler_x86.cpp:2783
#3 0x00007ffff5ce7d72 in MacroAssembler::pop_CPU_state (this=0x7ffff0027378) at /home/jvm/jdk/src/hotspot/cpu/x86/macroAssembler_x86.cpp:2770
#4 0x00007ffff5f4a261 in RegisterSaver::restore_live_registers (masm=0x7ffff0027378, restore_vectors=false)
at /home/jvm/jdk/src/hotspot/cpu/x86/sharedRuntime_x86_64.cpp:437
#5 0x00007ffff5f53fe6 in SharedRuntime::generate_resolve_blob (
destination=0x7ffff5f3c036 <SharedRuntime::handle_wrong_method(JavaThread*)> "UH\211\345ATSH\201\354\200\023", name=0x7ffff67eeaf0 "wrong_method_stub")
at /home/jvm/jdk/src/hotspot/cpu/x86/sharedRuntime_x86_64.cpp:3058
#6 0x00007ffff5f36f7b in SharedRuntime::generate_stubs () at /home/jvm/jdk/src/hotspot/share/runtime/sharedRuntime.cpp:103
#7 0x00007ffff59570ad in init_globals () at /home/jvm/jdk/src/hotspot/share/runtime/init.cpp:131
#8 0x00007ffff60eed9d in Threads::create_vm (args=0x7ffff48c1e10, canTryAgain=0x7ffff48c1d03) at /home/jvm/jdk/src/hotspot/share/runtime/thread.cpp:2809
#9 0x00007ffff5a53543 in JNI_CreateJavaVM_inner (vm=0x7ffff48c1e68, penv=0x7ffff48c1e70, args=0x7ffff48c1e10) at /home/jvm/jdk/src/hotspot/share/prims/jni.cpp:3613
#10 0x00007ffff5a5389c in JNI_CreateJavaVM (vm=0x7ffff48c1e68, penv=0x7ffff48c1e70, args=0x7ffff48c1e10) at /home/jvm/jdk/src/hotspot/share/prims/jni.cpp:3701
#11 0x00007ffff79b8141 in InitializeJVM (pvm=0x7ffff48c1e68, penv=0x7ffff48c1e70, ifn=0x7ffff48c1ec0) at /home/jvm/jdk/src/java.base/share/native/libjli/java.c:1459
#12 0x00007ffff79b4f39 in JavaMain (_args=0x7fffffffb130) at /home/jvm/jdk/src/java.base/share/native/libjli/java.c:411
#13 0x00007ffff79bba79 in ThreadJavaMain (args=0x7fffffffb130) at /home/jvm/jdk/src/java.base/unix/native/libjli/java_md.c:651
#14 0x00007ffff779cea5 in start_thread () from /lib64/libpthread.so.0
#15 0x00007ffff72c19fd in clone () from /lib64/libc.so.6
(gdb) p code_section->limit()
$1 = (u_char *) 0x7fffd947d0f8 '\314' <repeats 199 times>, <incomplete sequence \314>...
(gdb) p code_section->end()
$2 = (u_char *) 0x7fffd947d0cb '\314' <repeats 199 times>, <incomplete sequence \314>...
(gdb) p 0x7fffd947d0f8 - 0x7fffd947d0cb
$3 = 45
```
- relates to
-
JDK-8282355 compiler/arguments/TestCodeEntryAlignment.java failed "guarantee(sect->end() <= tend) failed: sanity"
-
- Closed
-
-
JDK-8281467 Allow larger OptoLoopAlignment and CodeEntryAlignment
-
- Resolved
-