JDK-8036624 : Assert in methodData.cpp, dp->tag() should be free.
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: hs25,9
  • Priority: P3
  • Status: Closed
  • Resolution: Duplicate
  • OS: os_x
  • CPU: x86
  • Submitted: 2014-03-04
  • Updated: 2023-07-21
  • Resolved: 2023-07-21
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 9
9Resolved
Related Reports
Duplicate :  
Description
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (/opt/jprt/T/P1/190614.cphillim/short/src/share/vm/oops/methodData.cpp:1299), pid=61698, tid=27791
#  assert(dp->tag() == DataLayout::no_tag || (dp->tag() == DataLayout::speculative_trap_data_tag && unsigned long != NULL)) failed: should be free
#
# JRE version: Java(TM) SE Runtime Environment (8.0-b131) (build 1.8.0-fastdebug-b131)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.0-b62-internal-201403031906.cphillim.rt-contains3-fastdebug mixed mode bsd-amd64 compressed oops)
# Core dump written. Default location: /cores/core or core.61698
#
# If you would like to submit signed char bug report, please visit:
#   http://bugreport.sun.com/bugreport/crash.jsp
#
Comments
With the fix for 8035841, I don't think this can happen anymore. Before the fix, some concurrent updates were possible. With the fix, updates are performed under a lock and so the kind of inconsistencies that this assert catches shouldn't be seen anymore. Closing.
06-03-2014

Roland will look.
04-03-2014

Here's the crashing thread stack from the hs_err_pid file: --------------- T H R E A D --------------- Current thread (0x00007fea99071000): JavaThread "Loading Thread #2" [_thread_in_vm, id=27791, stack(0x00000002a6bb3000,0x00000002a6cb3000)] Stack: [0x00000002a6bb3000,0x00000002a6cb3000], sp=0x00000002a6cb0da0, free space=1015k Native frames: (J=compiled Java code, unsigned int=interpreted, void volatile=VM code, C=native code) V [libjvm.dylib+0x8aef54] VMError::report_and_die()+0x45esh: /usr/ccs/bin/elfdump: No such file or directory sh: /usr/ccs/bin/nm: No such file or directory Warning: /export/local/aurora/sandbox/sca/vmsqe/jdk/nightly/fastdebug/rt_baseline/macosx-amd64//jre/lib/server/libjvm.dylib exists but has been stripped V [libjvm.dylib+0x2ffa45] report_vm_error(char const*, int, char const*, char const*)+0x63 V [libjvm.dylib+0x6a8371] MethodData::bci_to_extra_data(int, Method*, bool)+0xb3 V [libjvm.dylib+0x31296a] MethodData::allocate_bci_to_data(int, Method*)+0x3e V [libjvm.dylib+0x30cd9a] Deoptimization::query_update_method_data(MethodData*, int, Deoptimization::DeoptReason, Method*, unsigned int&, bool&, bool&)+0x98 V [libjvm.dylib+0x30cf24] Deoptimization::update_method_data_from_interpreter(MethodData*, int, int)+0x66 V [libjvm.dylib+0x48f832] InterpreterRuntime::note_trap_inner(JavaThread*, int, methodHandle, int, Thread*)+0x186 V [libjvm.dylib+0x48f91a] InterpreterRuntime::note_trap(JavaThread*, int, Thread*)+0xd8 V [libjvm.dylib+0x49021c] InterpreterRuntime::create_exception(JavaThread*, char*, char*)+0x160 unsigned int custom.B8.unwrappedGeneratedCode()V+2997 unsigned int custom.B8.generatedCode()V+1 unsigned int custom.A8.<init>()V+5 unsigned int custom.B8.<init>()V+1 unsigned int custom.C.<init>()V+86 unsigned int custom.D2.<init>()V+1 void ~StubRoutines::call_stub V [libjvm.dylib+0x498e90] JavaCalls::call_helper(JavaValue*, methodHandle*, JavaCallArguments*, Thread*)+0x92c V [libjvm.dylib+0x77c741] Reflection::invoke(instanceKlassHandle, methodHandle, Handle, bool, objArrayHandle, BasicType, objArrayHandle, bool, Thread*)+0x1379 V [libjvm.dylib+0x77cdc3] Reflection::invoke_constructor(oop, objArrayHandle, Thread*)+0x38f V [libjvm.dylib+0x530651] JVM_NewInstanceFromConstructor+0x21e unsigned int sun.reflect.NativeConstructorAccessorImpl.newInstance0(Ljava/lang/reflect/Constructor;[Ljava/lang/Object;)Ljava/lang/Object;+0 J 369 C1 sun.reflect.NativeConstructorAccessorImpl.newInstance([Ljava/lang/Object;)Ljava/lang/Object; (89 bytes) @ 0x0000000210622a14 [0x00000002106213e0+0x1634] unsigned int sun.reflect.DelegatingConstructorAccessorImpl.newInstance([Ljava/lang/Object;)Ljava/lang/Object;+5 J 368 C1 java.lang.reflect.Constructor.newInstance([Ljava/lang/Object;)Ljava/lang/Object; (87 bytes) @ 0x0000000210601c94 [0x00000002106015c0+0x6d4] J 367 C1 java.lang.Class.newInstance()Ljava/lang/Object; (155 bytes) @ 0x0000000210607e84 [0x0000000210606fe0+0xea4] unsigned int runtime.ParallelClassLoading.shared.ProvokeType.provoke(Ljava/lang/ClassLoader;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V+297 unsigned int runtime.ParallelClassLoading.shared.ProvokeType.provoke(Ljava/lang/ClassLoader;Ljava/lang/String;)V+8 unsigned int runtime.ParallelClassLoading.shared.ClassLoadingThread.run()V+83 void ~StubRoutines::call_stub V [libjvm.dylib+0x498e90] JavaCalls::call_helper(JavaValue*, methodHandle*, JavaCallArguments*, Thread*)+0x92c V [libjvm.dylib+0x499cc5] JavaCalls::call_virtual(JavaValue*, KlassHandle, Symbol*, Symbol*, JavaCallArguments*, Thread*)+0x2af V [libjvm.dylib+0x49a06b] JavaCalls::call_virtual(JavaValue*, Handle, KlassHandle, Symbol*, Symbol*, Thread*)+0x69 V [libjvm.dylib+0x529119] thread_entry(JavaThread*, Thread*)+0xc0 V [libjvm.dylib+0x83e99b] JavaThread::thread_main_inner()+0x185 V [libjvm.dylib+0x84138e] JavaThread::run()+0x2a2 V [libjvm.dylib+0x702ed9] java_start(Thread*)+0x105 C [libsystem_c.dylib+0x14772] _pthread_start+0x147sh: /usr/ccs/bin/elfdump: No such file or directory sh: /usr/ccs/bin/nm: No such file or directory Warning: /usr/lib/system/libsystem_c.dylib exists but has been stripped C [libsystem_c.dylib+0x11a1] thread_start+0xd Java frames: (J=compiled Java code, unsigned int=interpreted, void volatile=VM code) unsigned int custom.B8.unwrappedGeneratedCode()V+2997 unsigned int custom.B8.generatedCode()V+1 unsigned int custom.A8.<init>()V+5 unsigned int custom.B8.<init>()V+1 unsigned int custom.C.<init>()V+86 unsigned int custom.D2.<init>()V+1 void ~StubRoutines::call_stub unsigned int sun.reflect.NativeConstructorAccessorImpl.newInstance0(Ljava/lang/reflect/Constructor;[Ljava/lang/Object;)Ljava/lang/Object;+0 J 369 C1 sun.reflect.NativeConstructorAccessorImpl.newInstance([Ljava/lang/Object;)Ljava/lang/Object; (89 bytes) @ 0x0000000210622a14 [0x00000002106213e0+0x1634] unsigned int sun.reflect.DelegatingConstructorAccessorImpl.newInstance([Ljava/lang/Object;)Ljava/lang/Object;+5 J 368 C1 java.lang.reflect.Constructor.newInstance([Ljava/lang/Object;)Ljava/lang/Object; (87 bytes) @ 0x0000000210601c94 [0x00000002106015c0+0x6d4] J 367 C1 java.lang.Class.newInstance()Ljava/lang/Object; (155 bytes) @ 0x0000000210607e84 [0x0000000210606fe0+0xea4] unsigned int runtime.ParallelClassLoading.shared.ProvokeType.provoke(Ljava/lang/ClassLoader;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V+297 unsigned int runtime.ParallelClassLoading.shared.ProvokeType.provoke(Ljava/lang/ClassLoader;Ljava/lang/String;)V+8 unsigned int runtime.ParallelClassLoading.shared.ClassLoadingThread.run()V+83 void ~StubRoutines::call_stub
04-03-2014