JDK-7026307 : DEBUG MESSAGE: broken null klass on amd64
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: hs21,7
  • Priority: P2
  • Status: Closed
  • Resolution: Fixed
  • OS: generic,linux_redhat_5.0
  • CPU: generic,x86
  • Submitted: 2011-03-10
  • Updated: 2012-02-01
  • Resolved: 2011-04-25
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 7 Other
7Fixed hs21Fixed
Related Reports
Duplicate :  
Duplicate :  
Duplicate :  
Duplicate :  
Relates :  
Description
Fastdebug VM crashes with 
=============== DEBUG MESSAGE: broken null klass ================

VM option '+StartAttachListener'
# To suppress the following error report, specify this argument
# after -XX: or in .hotspotrc:  SuppressErrorAt=/sharedRuntime.cpp:757
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (/tmp/jprt/P1/B/225150.et151817/source/src/share/vm/runtime/sharedRuntime.cpp:757), pid=15813, tid=140179576310096
#  guarantee(cb->is_adapter_blob() || cb->is_method_handles_adapter_blob()) failed: exception happened outside interpreter, nmethods and vtable stubs (1)
(21.0-b04-internal-201103042251.et151817.hs21-b04-snapshot-fastdebug compiled mode 

Product/fastdebug build also may crash with SIGSEGV:

# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007f89fc1a382b, pid=15693, tid=140230539037008


Not reproducible with JDK 7 b132, HS 21 b03.

Comments
EVALUATION Reporduces with the latest OI. I made a typo while refactoring for 7020521, in stubGenerator_x86_64.cpp: address generate_generic_copy(const char *name, address byte_copy_entry, address short_copy_entry, address int_copy_entry, address long_copy_entry, address oop_copy_entry, address checkcast_copy_entry) The order of arguments is wrong, entry_oop_arraycopy and entry_jlong_arraycopy should be swapped. With compressed oops this would cause stomping, among other things.
30-03-2011

EVALUATION http://hg.openjdk.java.net/jdk7/hotspot-comp/hotspot/rev/348c0df561a9
30-03-2011