JDK-8248013 : Crash occurs in java/lang/StackWalker/LocalsAndOperands.java
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 11.0.7-oracle,11.0.8-oracle,15,16
  • Priority: P3
  • Status: Closed
  • Resolution: Duplicate
  • Submitted: 2020-06-22
  • Updated: 2020-07-20
  • Resolved: 2020-07-20
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.
JDK 11
11-poolResolved
Related Reports
Duplicate :  
Duplicate :  
Relates :  
Relates :  
Relates :  
Relates :  
Relates :  
Relates :  
Description
Test: java/lang/StackWalker/LocalsAndOperands.java
VM args: -XX:+CreateCoredumpOnCrash -ea -esa -server -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI -XX:+UseJVMCICompiler -Djvmci.Compiler=graal -XX:+TieredCompilation
Reproducible: Intermittent
Regression: No (reproducible in 11.0.7 b08)
OS: Failures found in all platforms (debug)

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (/scratch/mesos/slaves/52628e90-e5e7-4ef3-af97-10d8776d10db-S110/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/ff2403d4-1725-4ca5-b281-ebf478e15998/runs/fb0d5773-80f7-46a3-bbb9-3a3c15ac805e/workspace/open/src/hotspot/share/oops/klass.inline.hpp:63), pid=67743, tid=25859
#  assert(!is_null(v)) failed: narrow klass value can never be zero
#
# JRE version: Java(TM) SE Runtime Environment 18.9 (11.0.8+10) (fastdebug build 11.0.8+10-LTS)
# Java VM: Java HotSpot(TM) 64-Bit Server VM 18.9 (fastdebug 11.0.8+10-LTS, compiled mode, tiered, jvmci, jvmci compiler, compressed oops, g1 gc, bsd-amd64)
# Core dump will be written. Default location: /cores/core.67743
#
# If you would like to submit a bug report, please visit:
#   https://bugreport.java.com/bugreport/crash.jsp
#
---------------  T H R E A D  ---------------

Current thread (0x00007f812bbde800):  GCTaskThread "GC Thread#3" [stack: 0x00007000082fc000,0x00007000083fc000] [id=25859]

Stack: [0x00007000082fc000,0x00007000083fc000],  sp=0x00007000083fb6f0,  free space=1021k
Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.dylib+0xc493f8]  VMError::report_and_die(int, char const*, char const*, __va_list_tag*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long)+0x674
V  [libjvm.dylib+0xc49ab5]  VMError::report_and_die(Thread*, void*, char const*, int, char const*, char const*, __va_list_tag*)+0x47
V  [libjvm.dylib+0x43ac3d]  report_vm_error(char const*, int, char const*, char const*, ...)+0xcc
V  [libjvm.dylib+0xbf48ba]  Klass::decode_klass_not_null(unsigned int)+0x4a
V  [libjvm.dylib+0x55de31]  G1ParScanThreadState::copy_to_survivor_space(InCSetState, oop, markOopDesc*)+0x2f
V  [libjvm.dylib+0x5116fd]  void G1ParScanThreadState::do_oop_evac<unsigned int>(unsigned int*)+0x185
V  [libjvm.dylib+0x55dab2]  G1ParScanThreadState::trim_queue()+0x2cc
V  [libjvm.dylib+0x50dbcf]  G1ParEvacuateFollowersClosure::do_void()+0x19
V  [libjvm.dylib+0x513e17]  G1ParTask::work(unsigned int)+0x163
V  [libjvm.dylib+0xca9f7e]  GangWorker::run_task(WorkData)+0x62
V  [libjvm.dylib+0xcaa041]  GangWorker::loop()+0x25
V  [libjvm.dylib+0xbba00d]  Thread::call_run()+0x7b
V  [libjvm.dylib+0xa2f11d]  thread_native_entry(Thread*)+0x139
C  [libsystem_pthread.dylib+0x3661]  _pthread_body+0x154
C  [libsystem_pthread.dylib+0x350d]  _pthread_body+0x0
C  [libsystem_pthread.dylib+0x2bf9]  thread_start+0xd



Comments
This sounds a lot like JDK-8225064. When I run with VerifyBeforeGC I get: [712.250s][error][gc,verify] GC(860) ---------- [712.250s][error][gc,verify] GC(860) Missing rem set entry: [712.250s][error][gc,verify] GC(860) Field 0x00000007e0b22e30 of obj 0x00000007e0b22e20 in region 11:(O)[0x00000007e0b00000,0x00000007e0c00000,0x00000007e0c00000] [712.250s][error][gc,verify] GC(860) [Ljava.lang.Object; [712.250s][error][gc,verify] GC(860) {0x00000007e0b22e20} - klass: 'java/lang/Object'[] [712.250s][error][gc,verify] GC(860) - length: 1
30-06-2020

I see that out of 100 runs, the test fails 1 or 2 times.
26-06-2020

Yes, this could be related to JDK-8239387. However, none of the crash logs identity where the bad oop is coming from.
26-06-2020

That looks very similar to JDK-8239387. [~dlong] could you please have a look?
24-06-2020