JDK-7036236 : VM crashes assert((!inside_attrs()) || is_error_reported()) failed ...
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 7
  • Priority: P3
  • Status: Closed
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2011-04-13
  • Updated: 2011-07-29
  • Resolved: 2011-04-24
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
Description
VM crashes in CompilerThread when CodeCache is full:

;; Using jvm: "/export/local/common/jdk/baseline/solaris-sparc/jre/lib/sparc/server/libjvm.so"
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (/HUDSON/workspace/jdk7-2-build-solaris-sparc-product/jdk7/hotspot/src/share/vm/utilities/xmlstream.cpp:128), pid=12038, tid=7
#  assert((!inside_attrs()) || is_error_reported()) failed: cannot print tag inside attrs
#
# JRE version: 7.0-b136
# Java VM: Java HotSpot(TM) Server VM (21.0-b06-fastdebug mixed mode solaris-sparc )
# Core dump written. Default location: /export/local/46106.JDK.PROMOTION.BIGAPPS+server_32_SerialGC_sol-sparc_dbg_aggr_Glassfish3+samples/results/as/domains/domain1/config/core or core.12038
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
#

---------------  T H R E A D  ---------------

Current thread (0x002a2c00):  JavaThread "C2 CompilerThread0" daemon [_thread_in_vm, id=7, stack(0xa4700000,0xa4780000)]

Stack: [0xa4700000,0xa4780000],  sp=0xa477f048,  free space=508k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0x1103ecc]  void VMError::report_and_die()+0x7d0;;  void VMError::report_and_die()+0x7d0
V  [libjvm.so+0x692690]  void report_vm_error(const char*,int,const char*,const char*)+0x74;;  void report_vm_error(const char*,int,const char*,const char*)+0x74
V  [libjvm.so+0x11375f8]  void xmlStream::va_tag(bool,const char*,void*)+0x58;;  void xmlStream::va_tag(bool,const char*,void*)+0x58
V  [libjvm.so+0x1137ac0]  void xmlStream::begin_elem(const char*,...)+0x30;;  void xmlStream::begin_elem(const char*,...)+0x30
V  [libjvm.so+0x5fc60c]  void CompileBroker::handle_full_code_cache()+0x90;;  void CompileBroker::handle_full_code_cache()+0x90
V  [libjvm.so+0x5f8de8]  void CompileBroker::compiler_thread_loop()+0x1dc;;  void CompileBroker::compiler_thread_loop()+0x1dc
V  [libjvm.so+0x104dc60]  void JavaThread::thread_main_inner()+0x1b4;;  void JavaThread::thread_main_inner()+0x1b4
V  [libjvm.so+0x104da94]  void JavaThread::run()+0x25c;;  void JavaThread::run()+0x25c
V  [libjvm.so+0xde5524]  java_start+0x184;;  java_start+0x184

Comments
EVALUATION http://hg.openjdk.java.net/jdk7/hotspot-rt/hotspot/rev/dbccacb79c63
23-04-2011

EVALUATION http://hg.openjdk.java.net/jdk7/hotspot-comp/hotspot/rev/dbccacb79c63
14-04-2011

EVALUATION This seems like a race: CompileBroker::handle_full_code_cache() can be called in different contexts, so a lock is required when we're printing to xtty, since it's stateful.
13-04-2011