-
Bug
-
Resolution: Fixed
-
P4
-
11, 17, 18, 19, 20
-
b06
A DESCRIPTION OF THE PROBLEM :
JVM crashes on dacapo benchmark with option "-XX:-GenerateRangeChecks". The crash occurs on JDK11 and JDK17.
Reproduce:
$ java -XX:-GenerateRangeChecks -Xcomp dacapo-9.12-MR1-bach.jar h2
Using scaled threading model. 16 processors detected, 16 threads used to drive the workload, in a possible range of [1,4000]
===== DaCapo 9.12-MR1 h2 starting =====
....
Completed 4000 transactions
Stock level ............. 155 (# To suppress the following error report, specify this argument
# after -XX: or in .hotspotrc: SuppressErrorAt=/parse2.cpp:207
#
# A fatal error has been detected by the Java Runtime Environment:
#
# Internal Error (/home/root/jdk_source/jdk11u/src/hotspot/share/opto/parse2.cpp:207), pid=7317, tid=7358
# assert(ptr != top()) failed: top should go hand-in-hand with stopped
#
# JRE version: OpenJDK Runtime Environment (11.0.15) (fastdebug build 11.0.15-internal+0-adhoc.root.jdk11u)
# Java VM: OpenJDK 64-Bit Server VM (fastdebug 11.0.15-internal+0-adhoc.root.jdk11u, compiled mode, tiered, compressed oops, g1 gc, linux-amd64)
# Core dump will be written. Default location: Core dumps may be processed with "/usr/share/apport/apport -p%p -s%s -c%c -d%d -P%P -u%u -g%g -- %E" (or dumping to /home/root/JOpFuzzer/core.7317)
#
--------------- T H R E A D ---------------
Current thread (0x00007f31a83e3800): JavaThread "C2 CompilerThread0" daemon [_thread_in_native, id=7358, stack(0x00007f31707dd000,0x00007f31708de000)]
Current CompileTask:
C2: 57927 9255 b 4 jdk.internal.math.FDBigInteger::<clinit> (403 bytes)
Stack: [0x00007f31707dd000,0x00007f31708de000], sp=0x00007f31708da550, free space=1013k
Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code)
V [libjvm.so+0x18dec8a] VMError::report_and_die(int, char const*, char const*, __va_list_tag*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long)+0x1ca
V [libjvm.so+0x18dfd7f] VMError::report_and_die(Thread*, void*, char const*, int, char const*, char const*, __va_list_tag*)+0x2f
V [libjvm.so+0xb4cbb0] report_vm_error(char const*, int, char const*, char const*, ...)+0x100
V [libjvm.so+0x1582c2c] Parse::array_addressing(BasicType, int, Type const*&)+0x27c
V [libjvm.so+0x1583378] Parse::array_load(BasicType)+0x38
V [libjvm.so+0x158b0b5] Parse::do_one_bytecode()+0x1665
V [libjvm.so+0x157a9a2] Parse::do_one_block()+0x432
V [libjvm.so+0x157b41f] Parse::do_all_blocks()+0xdf
V [libjvm.so+0x157d297] Parse::Parse(JVMState*, ciMethod*, float)+0xcd7
V [libjvm.so+0x87529a] ParseGenerator::generate(JVMState*)+0x8a
V [libjvm.so+0xa709db] Compile::Compile(ciEnv*, C2Compiler*, ciMethod*, int, bool, bool, bool, bool, DirectiveSet*)+0xdab
V [libjvm.so+0x87374b] C2Compiler::compile_method(ciEnv*, ciMethod*, int, DirectiveSet*)+0xfb
V [libjvm.so+0xa7e300] CompileBroker::invoke_compiler_on_method(CompileTask*)+0x390
V [libjvm.so+0xa7f2c8] CompileBroker::compiler_thread_loop()+0x418
V [libjvm.so+0x181032b] JavaThread::thread_main_inner()+0x20b
V [libjvm.so+0x180c165] Thread::call_run()+0x75
V [libjvm.so+0x151cdd6] thread_native_entry(Thread*)+0x106
FREQUENCY : always
JVM crashes on dacapo benchmark with option "-XX:-GenerateRangeChecks". The crash occurs on JDK11 and JDK17.
Reproduce:
$ java -XX:-GenerateRangeChecks -Xcomp dacapo-9.12-MR1-bach.jar h2
Using scaled threading model. 16 processors detected, 16 threads used to drive the workload, in a possible range of [1,4000]
===== DaCapo 9.12-MR1 h2 starting =====
....
Completed 4000 transactions
Stock level ............. 155 (# To suppress the following error report, specify this argument
# after -XX: or in .hotspotrc: SuppressErrorAt=/parse2.cpp:207
#
# A fatal error has been detected by the Java Runtime Environment:
#
# Internal Error (/home/root/jdk_source/jdk11u/src/hotspot/share/opto/parse2.cpp:207), pid=7317, tid=7358
# assert(ptr != top()) failed: top should go hand-in-hand with stopped
#
# JRE version: OpenJDK Runtime Environment (11.0.15) (fastdebug build 11.0.15-internal+0-adhoc.root.jdk11u)
# Java VM: OpenJDK 64-Bit Server VM (fastdebug 11.0.15-internal+0-adhoc.root.jdk11u, compiled mode, tiered, compressed oops, g1 gc, linux-amd64)
# Core dump will be written. Default location: Core dumps may be processed with "/usr/share/apport/apport -p%p -s%s -c%c -d%d -P%P -u%u -g%g -- %E" (or dumping to /home/root/JOpFuzzer/core.7317)
#
--------------- T H R E A D ---------------
Current thread (0x00007f31a83e3800): JavaThread "C2 CompilerThread0" daemon [_thread_in_native, id=7358, stack(0x00007f31707dd000,0x00007f31708de000)]
Current CompileTask:
C2: 57927 9255 b 4 jdk.internal.math.FDBigInteger::<clinit> (403 bytes)
Stack: [0x00007f31707dd000,0x00007f31708de000], sp=0x00007f31708da550, free space=1013k
Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code)
V [libjvm.so+0x18dec8a] VMError::report_and_die(int, char const*, char const*, __va_list_tag*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long)+0x1ca
V [libjvm.so+0x18dfd7f] VMError::report_and_die(Thread*, void*, char const*, int, char const*, char const*, __va_list_tag*)+0x2f
V [libjvm.so+0xb4cbb0] report_vm_error(char const*, int, char const*, char const*, ...)+0x100
V [libjvm.so+0x1582c2c] Parse::array_addressing(BasicType, int, Type const*&)+0x27c
V [libjvm.so+0x1583378] Parse::array_load(BasicType)+0x38
V [libjvm.so+0x158b0b5] Parse::do_one_bytecode()+0x1665
V [libjvm.so+0x157a9a2] Parse::do_one_block()+0x432
V [libjvm.so+0x157b41f] Parse::do_all_blocks()+0xdf
V [libjvm.so+0x157d297] Parse::Parse(JVMState*, ciMethod*, float)+0xcd7
V [libjvm.so+0x87529a] ParseGenerator::generate(JVMState*)+0x8a
V [libjvm.so+0xa709db] Compile::Compile(ciEnv*, C2Compiler*, ciMethod*, int, bool, bool, bool, bool, DirectiveSet*)+0xdab
V [libjvm.so+0x87374b] C2Compiler::compile_method(ciEnv*, ciMethod*, int, DirectiveSet*)+0xfb
V [libjvm.so+0xa7e300] CompileBroker::invoke_compiler_on_method(CompileTask*)+0x390
V [libjvm.so+0xa7f2c8] CompileBroker::compiler_thread_loop()+0x418
V [libjvm.so+0x181032b] JavaThread::thread_main_inner()+0x20b
V [libjvm.so+0x180c165] Thread::call_run()+0x75
V [libjvm.so+0x151cdd6] thread_native_entry(Thread*)+0x106
FREQUENCY : always