United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
Bug ID: JDK-7012339 JSR 292 crash in G1SATBCardTableModRefBS::write_ref_field_pre_work()
JDK-7012339 : JSR 292 crash in G1SATBCardTableModRefBS::write_ref_field_pre_work()

Details
Type:
Bug
Submit Date:
2011-01-14
Status:
Closed
Updated Date:
2012-02-01
Project Name:
JDK
Resolved Date:
2011-03-07
Component:
hotspot
OS:
generic
Sub-Component:
runtime
CPU:
generic
Priority:
P2
Resolution:
Fixed
Affected Versions:
hs20
Fixed Versions:
hs21 (b03)

Related Reports
Backport:

Sub Tasks

Description
VM crashes on linux-i586 with G1 GC:

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (g1SATBCardTableModRefBS.hpp:82), pid=10576, tid=3064564592
#  guarantee(false) failed: Not needed
#
# JRE version: 7.0-b125
# Java VM: Java HotSpot(TM) Server VM (20.0-b06 mixed mode linux-x86 )


Stack: [0xb6a48000,0xb6a99000],  sp=0xb6a97c80,  free space=319k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0x686e1f]  VMError::report(outputStream*)+0x13cf
V  [libjvm.so+0x6870ee]  VMError::report_and_die()+0x17e
V  [libjvm.so+0x2c57be]  report_vm_error(char const*, int, char const*, char const*)+0x3e
V  [libjvm.so+0x3511dc]  G1SATBCardTableModRefBS::write_ref_field_pre_work(void*, oopDesc*)+0x1c
V  [libjvm.so+0x2c5131]  ConstantPoolCacheEntry::set_method(Bytecodes::Code, methodHandle, int)+0x291
V  [libjvm.so+0x3bbb98]  InterpreterRuntime::resolve_invokedynamic(JavaThread*)+0x3a8
[...]
v  ~StubRoutines::call_stub
V  [libjvm.so+0x3c192c]  JavaCalls::call_helper(JavaValue*, methodHandle*, JavaCallArguments*, Thread*)+0x26c
V  [libjvm.so+0x558399]  os::os_exception_wrapper(void (*)(JavaValue*, methodHandle*, JavaCallArguments*, Thread*), JavaValue*, methodHandle*, JavaCallArguments*, Thread*)+0x19
V  [libjvm.so+0x3c08cf]  JavaCalls::call(JavaValue*, methodHandle, JavaCallArguments*, Thread*)+0x2f
V  [libjvm.so+0x3cbc2a]  jni_invoke_static(JNIEnv_*, JavaValue*, _jobject*, JNICallType, _jmethodID*, JNI_ArgumentPusher*, Thread*)+0x21a
V  [libjvm.so+0x3d200a]  jni_CallStaticVoidMethod+0xba
C  [libjli.so+0x25f0]  JavaMain+0x560
C  [libpthread.so.0+0x667f]  start_thread+0xbf

                                    

Comments
SUGGESTED FIX

Cast &_f1 to oop*.
*** (#1 of 1): [ UNSAVED ] ###@###.###
                                     
2011-01-27
EVALUATION

The cast of &_f1 to HeapWord* in ConstantPoolCacheEntry::set_f1_if_null_atomic leads to the wrong version of update_barrier_set_pre.
                                     
2011-01-27



Hardware and Software, Engineered to Work Together