United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
Bug ID: JDK-7011865 JSR 292 CTW fails: !THREAD->is_Compiler_thread() failed: Can not load classes with the Compiler thre
JDK-7011865 : JSR 292 CTW fails: !THREAD->is_Compiler_thread() failed: Can not load classes with the Compiler thre

Details
Type:
Bug
Submit Date:
2011-01-12
Status:
Closed
Updated Date:
2012-02-01
Project Name:
JDK
Resolved Date:
2011-04-25
Component:
hotspot
OS:
generic
Sub-Component:
compiler
CPU:
generic
Priority:
P3
Resolution:
Fixed
Affected Versions:
hs20
Fixed Versions:
hs21 (b05)

Related Reports
Backport:

Sub Tasks

Description
#  assert(!THREAD->is_Compiler_thread()) failed: Can not load classes with the Compiler thread
#
# JRE version: 7.0-b124
# Java VM: OpenJDK 64-Bit Server VM (20.0-b05-internal-201101071957.kvn.6876037-fastdebug mixed mode linux-amd64 compressed oops)

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

Current thread (0x000000000072f000):  JavaThread "C2 CompilerThread1" daemon [_thread_in_vm, id=32509, stack(0x0000000040b0b000,0x0000000040c0c000)]

Stack: [0x0000000040b0b000,0x0000000040c0c000],  sp=0x0000000040c08570,  free space=1013k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0xba4f0c]  VMError::report(outputStream*)+0x123c/usr/bin/nm: /export/local/common/jdk/baseline/linux-amd64/jre/lib/amd64/server/libjvm.so: File format not recognized
Warning: /export/local/common/jdk/baseline/linux-amd64/jre/lib/amd64/server/libjvm.so exists but has been stripped

V  [libjvm.so+0xba52dc]  VMError::report_and_die()+0x2dc
V  [libjvm.so+0x5b58c4]  report_vm_error(char const*, int, char const*, char const*)+0x84
V  [libjvm.so+0xb115af]  SystemDictionary::resolve_or_null(symbolHandle, Handle, Handle, Thread*)+0x8f
V  [libjvm.so+0xb12663]  SystemDictionary::resolve_or_fail(symbolHandle, Handle, Handle, bool, Thread*)+0x33
V  [libjvm.so+0x8b546a]  LinkResolver::lookup_implicit_method(methodHandle&, KlassHandle, symbolHandle, symbolHandle, KlassHandle, Thread*)+0xda
V  [libjvm.so+0x8b5f8d]  LinkResolver::resolve_method(methodHandle&, KlassHandle, symbolHandle, symbolHandle, KlassHandle, bool, Thread*)+0x2ed
V  [libjvm.so+0x8b65e6]  LinkResolver::linktime_resolve_virtual_method(methodHandle&, KlassHandle, symbolHandle, symbolHandle, KlassHandle, bool, Thread*)+0x36
V  [libjvm.so+0x8b6798]  LinkResolver::linktime_resolve_virtual_method_or_null(KlassHandle, symbolHandle, symbolHandle, KlassHandle, bool)+0x68
V  [libjvm.so+0x48f779]  ciEnv::lookup_method(instanceKlass*, instanceKlass*, symbolOopDesc*, symbolOopDesc*, Bytecodes::Code)+0x2d9
V  [libjvm.so+0x491be1]  ciEnv::get_method_by_index_impl(constantPoolHandle, int, Bytecodes::Code, ciInstanceKlass*)+0xd1
V  [libjvm.so+0x491f05]  ciEnv::get_method_by_index(constantPoolHandle, int, Bytecodes::Code, ciInstanceKlass*)+0x155
V  [libjvm.so+0x4c4cba]  ciBytecodeStream::get_method(bool&)+0x39a
V  [libjvm.so+0x4ce916]  ciTypeFlow::StateVector::do_invoke(ciBytecodeStream*, bool)+0x26
V  [libjvm.so+0x4d10cd]  ciTypeFlow::StateVector::apply_one_bytecode(ciBytecodeStream*)+0x35d
V  [libjvm.so+0x4d43ec]  ciTypeFlow::flow_block(ciTypeFlow::Block*, ciTypeFlow::StateVector*, ciTypeFlow::JsrSet*)+0x2cc
V  [libjvm.so+0x4d4bc9]  ciTypeFlow::df_flow_types(ciTypeFlow::Block*, bool, ciTypeFlow::StateVector*, ciTypeFlow::JsrSet*)+0x4a9
V  [libjvm.so+0x4d55c3]  ciTypeFlow::flow_types()+0x223
V  [libjvm.so+0x4d585d]  ciTypeFlow::do_flow()+0x2d
V  [libjvm.so+0x4a68bc]  ciMethod::get_flow_analysis()+0x7c
V  [libjvm.so+0x45d3c4]  ParseGenerator::can_parse(ciMethod*, int)+0x34
V  [libjvm.so+0x45d495]  CallGenerator::for_inline(ciMethod*, float)+0x25
V  [libjvm.so+0x541a7e]  Compile::Compile(ciEnv*, C2Compiler*, ciMethod*, int, bool, bool)+0xcfe
V  [libjvm.so+0x45c025]  C2Compiler::compile_method(ciEnv*, ciMethod*, int)+0x245
V  [libjvm.so+0x5494b6]  CompileBroker::invoke_compiler_on_method(CompileTask*)+0x406
V  [libjvm.so+0x54aa64]  CompileBroker::compiler_thread_loop()+0x5a4
V  [libjvm.so+0xb4a7a6]  JavaThread::thread_main_inner()+0xf6
V  [libjvm.so+0x9c0e60]  java_start(Thread*)+0xf0


Current CompileTask:
C2: 313676 6514  !b  java.dyn.ClassValue.computeValue(Ljava/lang/Class;)Ljava/lang/Object; (52 bytes)

                                    

Comments
EVALUATION

It's easily reproducible:

$ gamma -XX:+ShowMessageBoxOnError -XX:+UnlockExperimentalVMOptions -XX:+EnableInvokeDynamic -Xverify:all -XX:+CompileTheWorld -XX:CompileTheWorldStartAt=7880 -Xbootclasspath/p:/java/re/jdk/7/promoted/all/b124/binaries/solaris-i586/jre/lib/rt.jar 
Using java runtime at: /export/twisti/hotspot-comp/7011839/build/jdk-solaris-i586/debug/jre
VM option '+ShowMessageBoxOnError'
VM option '+UnlockExperimentalVMOptions'
VM option '+EnableInvokeDynamic'
VM option '+CompileTheWorld'
VM option 'CompileTheWorldStartAt=7880'
CompileTheWorld : Compiling all classes in /net/jre.sfbay/p/v37/jdk/7/ea/b124/binaries/solaris-i586/jre/lib/rt.jar

Jan 12, 2011 6:12:44 AM com.sun.org.apache.xml.internal.security.utils.CachedXPathFuncHereAPI fixupFunctionTable
INFO: Registering Here function
Preloading failed for (4886) com/sun/org/apache/xpath/internal/objects/XNodeSet
Preloading failed for (6580) com/sun/xml/internal/ws/binding/BindingImpl
Preloading failed for (6618) com/sun/xml/internal/ws/client/WSServiceDelegate
Preloading failed for (6905) com/sun/xml/internal/ws/model/wsdl/WSDLBoundPortTypeImpl
Preloading failed for (7335) com/sun/xml/internal/ws/wsdl/parser/RuntimeWSDLParser
CompileTheWorld (7880) : java/beans/javax_swing_DefaultListModel_PersistenceDelegate
CompileTheWorld (7881) : java/beans/javax_swing_JFrame_PersistenceDelegate
CompileTheWorld (7882) : java/beans/javax_swing_JMenu_PersistenceDelegate
CompileTheWorld (7883) : java/beans/javax_swing_JTabbedPane_PersistenceDelegate
CompileTheWorld (7884) : java/beans/javax_swing_ToolTipManager_PersistenceDelegate
CompileTheWorld (7885) : java/beans/javax_swing_border_MatteBorder_PersistenceDelegate
CompileTheWorld (7886) : java/beans/javax_swing_tree_DefaultMutableTreeNode_PersistenceDelegate
CompileTheWorld (7887) : java/beans/sun_swing_PrintColorUIResource_PersistenceDelegate
CompileTheWorld (7888) : Skipping java/dyn/CallSite
CompileTheWorld (7889) : java/dyn/ClassValue$ClassValueMap
CompileTheWorld (7890) : java/dyn/ClassValue
# To suppress the following error report, specify this argument
# after -XX: or in .hotspotrc:  SuppressErrorAt=/systemDictionary.cpp:193
==============================================================================
Unexpected Error
------------------------------------------------------------------------------
Internal Error at systemDictionary.cpp:193, pid=16101, tid=12
assert(!THREAD->is_Compiler_thread()) failed: Can not load classes with the Compiler thread

Do you want to debug the problem?

To debug, run 'dbx - 16101'; then switch to thread 12
Enter 'yes' to launch dbx automatically (PATH must include dbx)
Otherwise, press RETURN to abort...
==============================================================================
                                     
2011-01-12
EVALUATION

(dbx) where
current thread: t@12
  [1] _waitid(0x0, 0x3ee6, 0xb57bb2f0, 0x3), at 0xfd753f35 
  [2] _waitpid(0x3ee6, 0xb57bb3b8, 0x0), at 0xfd70fbd3 
  [3] waitpid_cancel(0x3ee6, 0xb57bb3b8, 0x0), at 0xfd743876 
=>[4] os::fork_and_exec(cmd = 0xfed75688 "dbx - 16101"), line 6239 in "os_solaris.cpp"
  [5] VMError::show_message_box(this = 0xb57bb540, buf = 0xfed75688 "dbx - 16101", buflen = 2000), line 56 in "vmError_solaris.cpp"
  [6] VMError::report_and_die(this = 0xb57bb540), line 756 in "vmError.cpp"
  [7] report_vm_error(file = 0xfeb9548b "/home/ct232829/hotspot-comp/7011839/src/share/vm/classfile/systemDictionary.cpp", line = 193, error_msg = 0xfeb954db "assert(!THREAD->is_Compiler_thread()) failed", detail_msg = 0xfeb95508 "Can not load classes with the Compiler thread"), line 216 in "debug.cpp"
  [8] SystemDictionary::resolve_or_null(class_name = CLASS, class_loader = CLASS, protection_domain = CLASS, __the_thread__ = 0x8225800), line 193 in "systemDictionary.cpp"
  [9] SystemDictionary::resolve_or_fail(class_name = CLASS, class_loader = CLASS, protection_domain = CLASS, throw_error = true, __the_thread__ = 0x8225800), line 145 in "systemDictionary.cpp"
  [10] LinkResolver::lookup_implicit_method(result = CLASS, klass = CLASS, name = CLASS, signature = CLASS, current_klass = CLASS, __the_thread__ = 0x8225800), line 224 in "linkResolver.cpp"
  [11] LinkResolver::resolve_method(resolved_method = CLASS, resolved_klass = CLASS, method_name = CLASS, method_signature = CLASS, current_klass = CLASS, check_access = true, __the_thread__ = 0x8225800), line 344 in "linkResolver.cpp"
  [12] LinkResolver::linktime_resolve_virtual_method(resolved_method = CLASS, resolved_klass = CLASS, method_name = CLASS, method_signature = CLASS, current_klass = CLASS, check_access = true, __the_thread__ = 0x8225800), line 754 in "linkResolver.cpp"
  [13] LinkResolver::linktime_resolve_virtual_method_or_null(resolved_klass = CLASS, method_name = CLASS, method_signature = CLASS, current_klass = CLASS, check_access = true), line 942 in "linkResolver.cpp"
  [14] ciEnv::lookup_method(this = 0xb57bcac4, accessor = 0xb92c46c8, holder = 0xb605b9c0, name = 0xb60028a8, sig = 0xb6004f70, bc = _invokevirtual), line 702 in "ciEnv.cpp"
  [15] ciEnv::get_method_by_index_impl(this = 0xb57bcac4, cpool = CLASS, index = 65551, bc = _invokevirtual, accessor = 0x8b52218), line 729 in "ciEnv.cpp"
  [16] ciEnv::get_method_by_index(this = 0xb57bcac4, cpool = CLASS, index = 65551, bc = _invokevirtual, accessor = 0x8b52218), line 806 in "ciEnv.cpp"
  [17] ciBytecodeStream::get_method(this = 0xb57bbbd0, will_link = true), line 361 in "ciStreams.cpp"
  [18] ciTypeFlow::StateVector::do_invoke(this = 0x8b9ec90, str = 0xb57bbbd0, has_receiver = true), line 648 in "ciTypeFlow.cpp"
  [19] ciTypeFlow::StateVector::apply_one_bytecode(this = 0x8b9ec90, str = 0xb57bbbd0), line 1313 in "ciTypeFlow.cpp"
  [20] ciTypeFlow::flow_block(this = 0x8b52ee0, block = 0x8b53870, state = 0x8b9ec90, jsrs = 0x8b9ecc0), line 2321 in "ciTypeFlow.cpp"
  [21] ciTypeFlow::df_flow_types(this = 0x8b52ee0, start = 0x8b53348, do_flow = true, temp_vector = 0x8b9ec90, temp_set = 0x8b9ecc0), line 2644 in "ciTypeFlow.cpp"
  [22] ciTypeFlow::flow_types(this = 0x8b52ee0), line 2694 in "ciTypeFlow.cpp"
  [23] ciTypeFlow::do_flow(this = 0x8b52ee0), line 2855 in "ciTypeFlow.cpp"
  [24] ciMethod::get_flow_analysis(this = 0x8b52190), line 350 in "ciMethod.cpp"
  [25] ParseGenerator::can_parse(m = 0x8b52190, entry_bci = 0), line 309 in "callGenerator.cpp"
  [26] CallGenerator::for_inline(m = 0x8b52190, expected_uses = 1.0), line 318 in "callGenerator.cpp"
  [27] Compile::Compile(this = 0xb57bc4b8, ci_env = 0xb57bcac4, compiler = 0x820f340, target = 0x8b52190, osr_bci = -1, subsume_loads = true, do_escape_analysis = true), line 643 in "compile.cpp"
  [28] C2Compiler::compile_method(this = 0x820f340, env = 0xb57bcac4, target = 0x8b52190, entry_bci = -1), line 124 in "c2compiler.cpp"
  [29] CompileBroker::invoke_compiler_on_method(task = 0x8af4420), line 1561 in "compileBroker.cpp"
  [30] CompileBroker::compiler_thread_loop(), line 1402 in "compileBroker.cpp"
  [31] compiler_thread_entry(thread = 0x8225800, __the_thread__ = 0x8225800), line 2915 in "thread.cpp"
  [32] JavaThread::thread_main_inner(this = 0x8225800), line 1505 in "thread.cpp"
  [33] JavaThread::run(this = 0x8225800), line 1489 in "thread.cpp"
  [34] java_start(thread_addr = 0x8225800), line 1067 in "os_solaris.cpp"
  [35] _thr_setup(0xfd585200), at 0xfd74f252 
  [36] _lwp_start(0x0, 0x3ee6, 0xb57bb2f0, 0x3, 0xfd585200, 0xfd7e6000), at 0xfd74f4b0 
(dbx) fr 8
Current function is SystemDictionary::resolve_or_null
  193     assert(!THREAD->is_Compiler_thread(), "Can not load classes with the Compiler thread");
(dbx) p class_name->print()
Symbol: 'sun/dyn/MethodHandleNatives'class_name.operator->()->print() = (void)
                                     
2011-01-12
EVALUATION

http://hg.openjdk.java.net/jdk7/hotspot-comp/hotspot/rev/d2134498fd3f
                                     
2011-03-18
EVALUATION

http://hg.openjdk.java.net/jdk7/hotspot-rt/hotspot/rev/d2134498fd3f
                                     
2011-03-21



Hardware and Software, Engineered to Work Together