United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
Bug ID: JDK-7003554 (tiered) assert(is_null_object() || handle() != NULL) failed: cannot embed null pointer
JDK-7003554 : (tiered) assert(is_null_object() || handle() != NULL) failed: cannot embed null pointer

Details
Type:
Bug
Submit Date:
2010-11-30
Status:
Closed
Updated Date:
2011-03-08
Project Name:
JDK
Resolved Date:
2011-03-08
Component:
hotspot
OS:
solaris_9
Sub-Component:
compiler
CPU:
sparc
Priority:
P3
Resolution:
Fixed
Affected Versions:
hs20
Fixed Versions:
hs20 (b04)

Related Reports
Backport:
Backport:
Relates:

Sub Tasks

Description
On 11/30/10 11:31, Tom Rodriguez wrote:
I don't think it's known.  It looks like a tiered issue with creation of the MDO, or lack thereof.
tom
On Nov 30, 2010, at 9:58 AM, Y. S. Ramakrishna wrote:
Is this known or should a new bug be filed?

http://sqeweb.sfbay.sun.com/nfs/results/vm/gtee/JDK7/NIGHTLY/VM/2010-11-29/Main_Baseline_closed-Tiered/vm/linux-amd64/server/mixed/linux-amd64_vm_server_mixed_vm.gc.testlist/ResultDir/LoadUnloadGC2/hs_err_pid20103.log


Stack: [0x00007fbcb0567000,0x00007fbcb0668000],  sp=0x00007fbcb0665fc0,  free space=1019k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0x7101ec];;  VMError::report(outputStream*)+0x122c
V  [libjvm.so+0x7105bc];;  VMError::report_and_die()+0x2dc
V  [libjvm.so+0x711514];;  report_vm_error(char const*, int, char const*, char const*)+0x84
V  [libjvm.so+0x200dbf];;  ciObject::constant_encoding()+0x7f
V  [libjvm.so+0x88652b];;  LIRGenerator::increment_event_counter_impl(CodeEmitInfo*, ciMethod*, int, int, bool, bool)+0x29b
V  [libjvm.so+0x886962];;  LIRGenerator::increment_event_counter(CodeEmitInfo*, int, bool)+0x82
V  [libjvm.so+0x889cc8];;  LIRGenerator::do_Base(Base*)+0x588
V  [libjvm.so+0x87edf4];;  LIRGenerator::do_root(Instruction*)+0xb4
V  [libjvm.so+0x88425e];;  LIRGenerator::block_do(BlockBegin*)+0x6e
V  [libjvm.so+0x8925b6];;  BlockList::iterate_forward(BlockClosure*)+0x76
V  [libjvm.so+0x8baffd];;  Compilation::emit_lir()+0x1fd
V  [libjvm.so+0x8bc51b];;  Compilation::compile_java_method()+0x17b
V  [libjvm.so+0x8bc68e];;  Compilation::compile_method()+0x5e
V  [libjvm.so+0x8bca94];;  Compilation::Compilation(AbstractCompiler*, ciEnv*, ciMethod*, int, BufferBlob*)+0x274
V  [libjvm.so+0x897a92];;  Compiler::compile_method(ciEnv*, ciMethod*, int)+0x132
V  [libjvm.so+0x2d5d56];;  CompileBroker::invoke_compiler_on_method(CompileTask*)+0x406
V  [libjvm.so+0x2d7304];;  CompileBroker::compiler_thread_loop()+0x5a4
V  [libjvm.so+0x64a0e6];;  JavaThread::thread_main_inner()+0xf6
V  [libjvm.so+0x724a00];;  java_start(Thread*)+0xf0

                                    

Comments
EVALUATION

It looks like the MDO was never created.
                                     
2010-11-30
EVALUATION

C1 with profiling doesn't check whether the MDO has been really allocated, which can silently fail if the perm gen is full. The solution is to check if the allocation failed and bailout out of inlining or compilation.
                                     
2010-12-01
EVALUATION

http://hg.openjdk.java.net/jdk7/hotspot-comp/hotspot/rev/5ddfcf4b079e
                                     
2010-12-03
EVALUATION

http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/5ddfcf4b079e
                                     
2010-12-16
EVALUATION

http://hg.openjdk.java.net/jdk7/build/hotspot/rev/5ddfcf4b079e
                                     
2010-12-25



Hardware and Software, Engineered to Work Together