-
Bug
-
Resolution: Fixed
-
P4
-
11, 12
-
b22
-
linux
Test runtime/InternalApi/ThreadCpuTimesDeadlock.java crashes very intermittently (only 2 from 1000 runs) with:
#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x00007fde8808dc20, pid=24398, tid=24438
#
# JRE version: Java(TM) SE Runtime Environment (12.0+15) (fastdebug build 12-ea+15)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 12-ea+15, mixed mode, sharing, tiered, compressed oops, g1 gc, linux-amd64)
# Problematic frame:
# C [libpthread.so.0+0xcc20] pthread_getcpuclockid+0x0
#
.....
--------------- T H R E A D ---------------
Current thread (0x00007fde80397000): JavaThread "MainThread" [_thread_in_vm, id=24438, stack(0x00007fde580cd000,0x00007fde581ce000)]
Stack: [0x00007fde580cd000,0x00007fde581ce000], sp=0x00007fde581cb678, free space=1017k
Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code)
C [libpthread.so.0+0xcc20] pthread_getcpuclockid+0x0
V [libjvm.so+0x1314cc8] ThreadTimesClosure::do_thread(Thread*)+0x248
V [libjvm.so+0x17ac65d] Threads::non_java_threads_do(ThreadClosure*)+0xad
V [libjvm.so+0x131d171] jmm_GetInternalThreadTimes+0x431
J 715 sun.management.HotspotThread.getInternalThreadTimes0([Ljava/lang/String;[J)I java.management@12-ea (0 bytes) @ 0x00007fde70751b4c [0x00007fde707519e0+0x000000000000016c]
J 720 c2 sun.management.HotspotThread.getInternalThreadCpuTimes()Ljava/util/Map; java.management@12-ea (79 bytes) @ 0x00007fde70755778 [0x00007fde70755520+0x0000000000000258]
j jdk.internal.reflect.GeneratedMethodAccessor2.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+36 java.base@12-ea
J 668 c1 jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; java.base@12-ea (10 bytes) @ 0x00007fde692d2454 [0x00007fde692d22a0+0x00000000000001b4]
J 667 c1 java.lang.reflect.Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; java.base@12-ea (65 bytes) @ 0x00007fde692d1afc [0x00007fde692d1680+0x000000000000047c]
j sun.reflect.misc.Trampoline.invoke(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+7
j jdk.internal.reflect.GeneratedMethodAccessor1.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+40
J 668 c1 jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; java.base@12-ea (10 bytes) @ 0x00007fde692d2454 [0x00007fde692d22a0+0x00000000000001b4]
J 711 c1 sun.reflect.misc.MethodUtil.invoke(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; java.base@12-ea (111 bytes) @ 0x00007fde692de814 [0x00007fde692ddc80+0x0000000000000b94]
j com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+3 java.management@12-ea
j com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(Ljava/lang/Object;Ljava/lang/Object;[Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+9 java.management@12-ea
j com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(Ljava/lang/Object;Ljava/lang/Object;[Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+6 java.management@12-ea
j com.sun.jmx.mbeanserver.PerInterface.getAttribute(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;+71 java.management@12-ea
j com.sun.jmx.mbeanserver.MBeanSupport.getAttribute(Ljava/lang/String;)Ljava/lang/Object;+13 java.management@12-ea
j com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getAttribute(Ljavax/management/ObjectName;Ljava/lang/String;)Ljava/lang/Object;+100 java.management@12-ea
J 690 c1 com.sun.jmx.mbeanserver.JmxMBeanServer.getAttribute(Ljavax/management/ObjectName;Ljava/lang/String;)Ljava/lang/Object; java.management@12-ea (16 bytes) @ 0x00007fde692e5bcc [0x00007fde692e56a0+0x000000000000052c]
j ThreadCpuTimesDeadlock.main([Ljava/lang/String;)V+112
v ~StubRoutines::call_stub
V [libjvm.so+0xea139a] JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, Thread*)+0x85a
V [libjvm.so+0x15c9952] invoke(InstanceKlass*, methodHandle const&, Handle, bool, objArrayHandle, BasicType, objArrayHandle, bool, Thread*) [clone .constprop.102]+0xc02
V [libjvm.so+0x15cd196] Reflection::invoke_method(oop, Handle, objArrayHandle, Thread*)+0x196
V [libjvm.so+0x101ba26] JVM_InvokeMethod+0x1d6
j jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+0 java.base@12-ea
j jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+100 java.base@12-ea
j jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+6 java.base@12-ea
j java.lang.reflect.Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+59 java.base@12-ea
j com.sun.javatest.regtest.agent.MainWrapper$MainThread.run()V+172
j java.lang.Thread.run()V+11 java.base@12-ea
v ~StubRoutines::call_stub
V [libjvm.so+0xea139a] JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, Thread*)+0x85a
V [libjvm.so+0xe9d34f] JavaCalls::call_virtual(JavaValue*, Handle, Klass*, Symbol*, Symbol*, Thread*)+0x3df
V [libjvm.so+0x1004b31] thread_entry(JavaThread*, Thread*)+0x91
V [libjvm.so+0x17b6367] JavaThread::thread_main_inner()+0x2c7
V [libjvm.so+0x17b669a] JavaThread::run()+0x22a
V [libjvm.so+0x14a09d0] thread_native_entry(Thread*)+0x100
#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x00007fde8808dc20, pid=24398, tid=24438
#
# JRE version: Java(TM) SE Runtime Environment (12.0+15) (fastdebug build 12-ea+15)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 12-ea+15, mixed mode, sharing, tiered, compressed oops, g1 gc, linux-amd64)
# Problematic frame:
# C [libpthread.so.0+0xcc20] pthread_getcpuclockid+0x0
#
.....
--------------- T H R E A D ---------------
Current thread (0x00007fde80397000): JavaThread "MainThread" [_thread_in_vm, id=24438, stack(0x00007fde580cd000,0x00007fde581ce000)]
Stack: [0x00007fde580cd000,0x00007fde581ce000], sp=0x00007fde581cb678, free space=1017k
Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code)
C [libpthread.so.0+0xcc20] pthread_getcpuclockid+0x0
V [libjvm.so+0x1314cc8] ThreadTimesClosure::do_thread(Thread*)+0x248
V [libjvm.so+0x17ac65d] Threads::non_java_threads_do(ThreadClosure*)+0xad
V [libjvm.so+0x131d171] jmm_GetInternalThreadTimes+0x431
J 715 sun.management.HotspotThread.getInternalThreadTimes0([Ljava/lang/String;[J)I java.management@12-ea (0 bytes) @ 0x00007fde70751b4c [0x00007fde707519e0+0x000000000000016c]
J 720 c2 sun.management.HotspotThread.getInternalThreadCpuTimes()Ljava/util/Map; java.management@12-ea (79 bytes) @ 0x00007fde70755778 [0x00007fde70755520+0x0000000000000258]
j jdk.internal.reflect.GeneratedMethodAccessor2.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+36 java.base@12-ea
J 668 c1 jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; java.base@12-ea (10 bytes) @ 0x00007fde692d2454 [0x00007fde692d22a0+0x00000000000001b4]
J 667 c1 java.lang.reflect.Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; java.base@12-ea (65 bytes) @ 0x00007fde692d1afc [0x00007fde692d1680+0x000000000000047c]
j sun.reflect.misc.Trampoline.invoke(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+7
j jdk.internal.reflect.GeneratedMethodAccessor1.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+40
J 668 c1 jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; java.base@12-ea (10 bytes) @ 0x00007fde692d2454 [0x00007fde692d22a0+0x00000000000001b4]
J 711 c1 sun.reflect.misc.MethodUtil.invoke(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; java.base@12-ea (111 bytes) @ 0x00007fde692de814 [0x00007fde692ddc80+0x0000000000000b94]
j com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+3 java.management@12-ea
j com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(Ljava/lang/Object;Ljava/lang/Object;[Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+9 java.management@12-ea
j com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(Ljava/lang/Object;Ljava/lang/Object;[Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;+6 java.management@12-ea
j com.sun.jmx.mbeanserver.PerInterface.getAttribute(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;+71 java.management@12-ea
j com.sun.jmx.mbeanserver.MBeanSupport.getAttribute(Ljava/lang/String;)Ljava/lang/Object;+13 java.management@12-ea
j com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getAttribute(Ljavax/management/ObjectName;Ljava/lang/String;)Ljava/lang/Object;+100 java.management@12-ea
J 690 c1 com.sun.jmx.mbeanserver.JmxMBeanServer.getAttribute(Ljavax/management/ObjectName;Ljava/lang/String;)Ljava/lang/Object; java.management@12-ea (16 bytes) @ 0x00007fde692e5bcc [0x00007fde692e56a0+0x000000000000052c]
j ThreadCpuTimesDeadlock.main([Ljava/lang/String;)V+112
v ~StubRoutines::call_stub
V [libjvm.so+0xea139a] JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, Thread*)+0x85a
V [libjvm.so+0x15c9952] invoke(InstanceKlass*, methodHandle const&, Handle, bool, objArrayHandle, BasicType, objArrayHandle, bool, Thread*) [clone .constprop.102]+0xc02
V [libjvm.so+0x15cd196] Reflection::invoke_method(oop, Handle, objArrayHandle, Thread*)+0x196
V [libjvm.so+0x101ba26] JVM_InvokeMethod+0x1d6
j jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+0 java.base@12-ea
j jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+100 java.base@12-ea
j jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+6 java.base@12-ea
j java.lang.reflect.Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+59 java.base@12-ea
j com.sun.javatest.regtest.agent.MainWrapper$MainThread.run()V+172
j java.lang.Thread.run()V+11 java.base@12-ea
v ~StubRoutines::call_stub
V [libjvm.so+0xea139a] JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, Thread*)+0x85a
V [libjvm.so+0xe9d34f] JavaCalls::call_virtual(JavaValue*, Handle, Klass*, Symbol*, Symbol*, Thread*)+0x3df
V [libjvm.so+0x1004b31] thread_entry(JavaThread*, Thread*)+0x91
V [libjvm.so+0x17b6367] JavaThread::thread_main_inner()+0x2c7
V [libjvm.so+0x17b669a] JavaThread::run()+0x22a
V [libjvm.so+0x14a09d0] thread_native_entry(Thread*)+0x100
- duplicates
-
JDK-8213434 Thread list contains newly allocated/born thread that can result fatal crash
- Closed
- relates to
-
JDK-8214428 Fix for JDK-8212207 was incorrect
- Closed
-
JDK-8214097 Rework thread initialization and teardown logic
- Resolved