JDK-8233428 : Test fails with assert(check.is_deoptimized_frame()) failed: missed deopt
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 14
  • Priority: P4
  • Status: Closed
  • Resolution: Won't Fix
  • CPU: sparc
  • Submitted: 2019-11-02
  • Updated: 2020-09-11
  • Resolved: 2020-09-11
Related Reports
Relates :  
Description
compiler/codecache/stress/UnexpectedDeoptimizationTest.java

----------System.out:(25/1550)----------
CompileCommand: dontinline compiler/codecache/stress/Helper$TestCase.method
For random generator using seed: 2853519475519217583
To re-run test with same seed value please add "-Djdk.test.lib.random.seed=2853519475519217583" to command line.
# To suppress the following error report, specify this argument
# after -XX: or in .hotspotrc:  SuppressErrorAt=/frame.cpp:297
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (/export/home/opt/mach5/mesos/work_dir/da5d6e2a-051c-4bab-9625-6c604ed04c44/workspace/open/src/hotspot/share/runtime/frame.cpp:297), pid=16617, tid=8
#  assert(check.is_deoptimized_frame()) failed: missed deopt
#
# JRE version: Java(TM) SE Runtime Environment (14.0+22) (fastdebug build 14-ea+22-948)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 14-ea+22-948, mixed mode, sharing, tiered, compressed oops, g1 gc, solaris-sparc)
# Core dump will be written. Default location: /scratch/opt/mach5/mesos/work_dir/f92b5b00-6893-4ff0-ac04-6ab4e7b47f47/testoutput/test-support/jtreg_open_test_hotspot_jtreg_hotspot_compiler/scratch/0/core or core.16617
#
Unsupported internal testing APIs have been used.

Stack: [0xffffffff57e00000,0xffffffff57f00000],  sp=0xffffffff57efe050,  free space=1016k
Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0x20c20b4]  void VMError::report_and_die(int,const char*,const char*,void*,Thread*,unsigned char*,void*,void*,const char*,int,unsigned long)+0xb14
V  [libjvm.so+0x20c1538]  void VMError::report_and_die(Thread*,void*,const char*,int,const char*,const char*,void*)+0x38
V  [libjvm.so+0x140acb0]  void report_vm_error(const char*,int,const char*,const char*,...)+0xf0
V  [libjvm.so+0x14e7bd0]  void frame::deoptimize(JavaThread*)+0x1f0
V  [libjvm.so+0x1439e64]  void Deoptimization::deoptimize_single_frame(JavaThread*,frame,Deoptimization::DeoptReason)+0x294
V  [libjvm.so+0x1439f3c]  void Deoptimization::deoptimize(JavaThread*,frame,RegisterMap*,Deoptimization::DeoptReason)+0xac
V  [libjvm.so+0x2134da0]  void VM_WhiteBoxDeoptimizeFrames::doit()+0x170
V  [libjvm.so+0x20c3cfc]  void VM_Operation::evaluate()+0x16c
V  [libjvm.so+0x20f26f8]  void VMThread::evaluate_operation(VM_Operation*)+0x108
V  [libjvm.so+0x20f2e2c]  void VMThread::loop()+0x4bc
V  [libjvm.so+0x20f20e4]  void VMThread::run()+0xf4
V  [libjvm.so+0x1fe1188]  void Thread::call_run()+0x178
V  [libjvm.so+0x1cb91e4]  thread_native_entry+0x384


Comments
SPARC port was removed in JDK 15: JDK-8244224
11-09-2020

ILW = Assert due to missed deopt, only happened once on SPARC, no workaround = MLH = P4 We had similar issues on SPARC in the past (see JDK-8016188) but they could never be reproduced.
04-11-2019