[concurrency-interest] Deadlock

David Holmes davidcholmes at aapt.net.au
Tue Jun 24 07:09:06 EDT 2014


Hi Peter,

What a strange coincidence - the fact that the initialization of
ThreadLocalRandom can lead to arbitrary code execution has just been a topic
of discussion, and it looks like your deadlock is related to that.

David Holmes

> -----Original Message-----
> From: concurrency-interest-bounces at cs.oswego.edu
> [mailto:concurrency-interest-bounces at cs.oswego.edu]On Behalf Of Peter
> Firmstone
> Sent: Tuesday, 24 June 2014 8:25 PM
> To: concurrency-interest at cs.oswego.edu
> Subject: [concurrency-interest] Deadlock
>
>
> This appears to be a ClassLoader deadlock in Java 7.
>
> The stack trace from the main thread is missing.
>
> Any ideas?
>
> Regards,
>
> Peter.
>
> Attaching to process ID 7124, please wait...
> Debugger attached successfully.
> Client compiler detected.
> JVM version is 25.0-b70
> Deadlock Detection:
>
> Found one Java-level deadlock:
> =============================
>
> "main":
>    waiting to lock Monitor at 0x0094bb2c (Object at 0x03d73c38, a
> java/lang/Object),
>    which is held by "Thread-1"
> "Thread-1":
>    waiting to lock Monitor at 0x0094c99c (Object at 0x03f02e50, a [I),
>    which is held by "main"
>
> Found a total of 1 deadlock.
>
> Thread 8: (state = BLOCKED)
>   - au.net.zeus.collection.ReferenceFactory.create(java.lang.Object,
> au.net.zeus.collection.RefQueue, au.net.zeus.collection.Ref) @bci=229,
> line=60 (Interpreted frame)
>   -
> au.net.zeus.collection.ReferenceProcessor.referenced(java.lang.Object,
> boolean, boolean) @bci=37, line=128 (Interpreted frame)
>   -
> au.net.zeus.collection.ReferenceProcessor.referenced(java.lang.Object,
> boolean, boolean) @bci=4, line=44 (Interpreted frame)
>   - au.net.zeus.collection.ReferenceMap.wrapKey(java.lang.Object,
> boolean, boolean) @bci=7, line=248 (Interpreted frame)
>   -
> au.net.zeus.collection.ReferenceConcurrentMap.putIfAbsent(java.lan
> g.Object,
> java.lang.Object) @bci=8, line=67 (Interpreted frame)
>   -
> org.apache.river.api.security.CombinerSecurityManager.checkPermiss
> ion(java.security.Permission,
> java.lang.Object) @bci=161, line=260 (Interpreted frame)
>   -
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanTr
> ustPermission(java.lang.Class)
> @bci=59, line=1848 (Interpreted frame)
>   -
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBea
> n(java.lang.Object,
> javax.management.ObjectName) @bci=25, line=322 (Interpreted frame)
>   - com.sun.jmx.mbeanserver.JmxMBeanServer$2.run() @bci=17, line=1225
> (Interpreted frame)
>   -
> java.security.AccessController.doPrivileged(java.security.Privileg
> edExceptionAction)
> @bci=0 (Interpreted frame)
>   - com.sun.jmx.mbeanserver.JmxMBeanServer.initialize() @bci=25,
> line=1223 (Interpreted frame)
>   - com.sun.jmx.mbeanserver.JmxMBeanServer.<init>(java.lang.String,
> javax.management.MBeanServer, javax.management.MBeanServerDelegate,
> com.sun.jmx.mbeanserver.MBeanInstantiator, boolean, boolean) @bci=133,
> line=255 (Interpreted frame)
>   -
> com.sun.jmx.mbeanserver.JmxMBeanServer.newMBeanServer(java.lang.String,
> javax.management.MBeanServer, javax.management.MBeanServerDelegate,
> boolean) @bci=13, line=1437 (Interpreted frame)
>   - javax.management.MBeanServerBuilder.newMBeanServer(java.lang.String,
> javax.management.MBeanServer, javax.management.MBeanServerDelegate)
> @bci=4, line=110 (Interpreted frame)
>   - javax.management.MBeanServerFactory.newMBeanServer(java.lang.String)
> @bci=36, line=329 (Interpreted frame)
>   -
> javax.management.MBeanServerFactory.createMBeanServer(java.lang.String)
> @bci=6, line=231 (Interpreted frame)
>   - javax.management.MBeanServerFactory.createMBeanServer() @bci=1,
> line=192 (Interpreted frame)
>   - java.lang.management.ManagementFactory.getPlatformMBeanServer()
> @bci=29, line=468 (Interpreted frame)
>   -
> sun.management.jmxremote.ConnectorBootstrap.startLocalConnectorServer()
> @bci=66, line=518 (Interpreted frame)
>   - sun.management.Agent.startLocalManagementAgent() @bci=13, line=138
> (Interpreted frame)
>   - sun.management.Agent.startAgent(java.util.Properties) @bci=76,
> line=260 (Interpreted frame)
>   - sun.management.Agent.agentmain(java.lang.String) @bci=45, line=128
> (Interpreted frame)
>   -
> sun.reflect.NativeMethodAccessorImpl.invoke0(java.lang.reflect.Method,
> java.lang.Object, java.lang.Object[]) @bci=0 (Interpreted frame)
>   - sun.reflect.NativeMethodAccessorImpl.invoke(java.lang.Object,
> java.lang.Object[]) @bci=100, line=62 (Interpreted frame)
>   - sun.reflect.DelegatingMethodAccessorImpl.invoke(java.lang.Object,
> java.lang.Object[]) @bci=6, line=43 (Interpreted frame)
>   - java.lang.reflect.Method.invoke(java.lang.Object,
> java.lang.Object[]) @bci=56, line=483 (Interpreted frame)
>   -
> sun.instrument.InstrumentationImpl.loadClassAndStartAgent(java.lan
> g.String,
> java.lang.String, java.lang.String) @bci=192, line=388 (Interpreted frame)
>   -
> sun.instrument.InstrumentationImpl.loadClassAndCallAgentmain(java.
> lang.String,
> java.lang.String) @bci=5, line=411 (Interpreted frame)
>
>
> Thread 7: (state = BLOCKED)
>
>
> Thread 5: (state = BLOCKED)
>   - au.net.zeus.collection.ReferenceFactory.create(java.lang.Object,
> au.net.zeus.collection.RefQueue, au.net.zeus.collection.Ref) @bci=229,
> line=60 (Interpreted frame)
>   -
> au.net.zeus.collection.ReferenceProcessor.referenced(java.lang.Object,
> boolean, boolean) @bci=37, line=128 (Interpreted frame)
>   -
> au.net.zeus.collection.ReferenceProcessor.referenced(java.lang.Object,
> boolean, boolean) @bci=4, line=44 (Interpreted frame)
>   - au.net.zeus.collection.ReferenceMap.wrapKey(java.lang.Object,
> boolean, boolean) @bci=7, line=248 (Interpreted frame)
>   -
> au.net.zeus.collection.ReferenceConcurrentMap.putIfAbsent(java.lan
> g.Object,
> java.lang.Object) @bci=8, line=67 (Interpreted frame)
>   -
> org.apache.river.api.security.CombinerSecurityManager.checkPermiss
> ion(java.security.Permission,
> java.lang.Object) @bci=161, line=260 (Interpreted frame)
>   -
> org.apache.river.api.security.CombinerSecurityManager.checkPermiss
> ion(java.security.Permission)
> @bci=27, line=202 (Interpreted frame)
>   - java.net.NetworkInterface.getHardwareAddress() @bci=18, line=447
> (Interpreted frame)
>   - java.util.concurrent.ThreadLocalRandom.initialSeed() @bci=116,
> line=158 (Interpreted frame)
>   - java.util.concurrent.ThreadLocalRandom.<clinit>() @bci=14, line=137
> (Interpreted frame)
>   - java.util.concurrent.ConcurrentHashMap.fullAddCount(long, boolean)
> @bci=0, line=2526 (Interpreted frame)
>   - java.util.concurrent.ConcurrentHashMap.addCount(long, int) @bci=104,
> line=2266 (Interpreted frame)
>   - java.util.concurrent.ConcurrentHashMap.putVal(java.lang.Object,
> java.lang.Object, boolean) @bci=357, line=1070 (Interpreted frame)
>   - java.util.concurrent.ConcurrentHashMap.putIfAbsent(java.lang.Object,
> java.lang.Object) @bci=4, line=1535 (Interpreted frame)
>   - java.lang.ClassLoader.getClassLoadingLock(java.lang.String) @bci=23,
> line=463 (Interpreted frame)
>   - java.lang.ClassLoader.loadClass(java.lang.String, boolean) @bci=2,
> line=404 (Interpreted frame)
>   - java.lang.ClassLoader.loadClass(java.lang.String, boolean) @bci=38,
> line=411 (Interpreted frame)
>   - sun.misc.Launcher$AppClassLoader.loadClass(java.lang.String,
> boolean) @bci=36, line=308 (Interpreted frame)
>   - java.lang.ClassLoader.loadClass(java.lang.String) @bci=3, line=357
> (Interpreted frame)
>   -
> org.cliffc.high_scale_lib.NonBlockingHashMap$SnapshotK.<init>(org.
cliffc.high_scale_lib.NonBlockingHashMap)
> @bci=10, line=1167 (Interpreted frame)
>   - org.cliffc.high_scale_lib.NonBlockingHashMap$2.iterator() @bci=8,
> line=1200 (Interpreted frame)
>   - au.net.zeus.collection.ReferenceProcessor$EnqueGarbageTask.run()
> @bci=15, line=166 (Interpreted frame)
>   - java.util.concurrent.Executors$RunnableAdapter.call() @bci=4,
> line=511 (Interpreted frame)
>   - java.util.concurrent.FutureTask.runAndReset() @bci=47, line=308
> (Interpreted frame)
>   -
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTa
> sk.access$301(java.util.concurrent.ScheduledThreadPoolExecutor$Sch
> eduledFutureTask)
> @bci=1, line=180 (Interpreted frame)
>   -
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTa
> sk.run()
> @bci=37, line=294 (Interpreted frame)
>   -
> java.util.concurrent.ThreadPoolExecutor.runWorker(java.util.concur
> rent.ThreadPoolExecutor$Worker)
> @bci=95, line=1142 (Interpreted frame)
>   - java.util.concurrent.ThreadPoolExecutor$Worker.run() @bci=5,
> line=617 (Interpreted frame)
>   - java.lang.Thread.run() @bci=11, line=744 (Interpreted frame)
>
>
> Thread 4: (state = BLOCKED)
>   - java.lang.Object.wait(long) @bci=0 (Interpreted frame)
>   - java.lang.ref.ReferenceQueue.remove(long) @bci=44, line=142
> (Interpreted frame)
>   - java.lang.ref.ReferenceQueue.remove() @bci=2, line=158 (Interpreted
> frame)
>   - java.lang.ref.Finalizer$FinalizerThread.run() @bci=36, line=209
> (Interpreted frame)
>
>
> Thread 3: (state = BLOCKED)
>   - java.lang.Object.wait(long) @bci=0 (Interpreted frame)
>   - java.lang.Object.wait() @bci=2, line=502 (Interpreted frame)
>   - java.lang.ref.Reference$ReferenceHandler.run() @bci=36, line=157
> (Interpreted frame)
>
>
> Thread 1: (state = BLOCKED)
>   - java.lang.ClassLoader.loadClass(java.lang.String, boolean) @bci=8,
> line=406 (Interpreted frame)
>   - sun.misc.Launcher$AppClassLoader.loadClass(java.lang.String,
> boolean) @bci=36, line=308 (Interpreted frame)
>   - java.lang.ClassLoader.loadClass(java.lang.String) @bci=3, line=357
> (Interpreted frame)
>   - au.net.zeus.collection.ReferenceFactory.create(java.lang.Object,
> au.net.zeus.collection.RefQueue, au.net.zeus.collection.Ref) @bci=229,
> line=60 (Interpreted frame)
>   -
> au.net.zeus.collection.ReferenceProcessor.referenced(java.lang.Object,
> boolean, boolean) @bci=37, line=128 (Interpreted frame)
>   -
> au.net.zeus.collection.ReferenceProcessor.referenced(java.lang.Object,
> boolean, boolean) @bci=4, line=44 (Interpreted frame)
>   - au.net.zeus.collection.ReferenceMap.wrapKey(java.lang.Object,
> boolean, boolean) @bci=7, line=248 (Interpreted frame)
>   -
> au.net.zeus.collection.ReferenceConcurrentMap.putIfAbsent(java.lan
> g.Object,
> java.lang.Object) @bci=8, line=67 (Interpreted frame)
>   -
> org.apache.river.api.security.CombinerSecurityManager.checkPermiss
> ion(java.security.Permission,
> java.lang.Object) @bci=161, line=260 (Interpreted frame)
>   -
> org.apache.river.api.security.CombinerSecurityManager.checkPermiss
> ion(java.security.Permission)
> @bci=27, line=202 (Interpreted frame)
>   - java.lang.System.checkIO() @bci=18, line=253 (Interpreted frame)
>   - java.lang.System.setErr(java.io.PrintStream) @bci=0, line=199
> (Interpreted frame)
>   - com.sun.jini.qa.harness.MasterTest.main(java.lang.String[]) @bci=9,
> line=84 (Interpreted frame)
>
> The long version:
>
> Attaching to process ID 7124, please wait...
> Debugger attached successfully.
> Client compiler detected.
> JVM version is 25.0-b70
> Deadlock Detection:
>
> Found one Java-level deadlock:
> =============================
>
> "main":
>    waiting to lock Monitor at 0x0094bb2c (Object at 0x03d73c38, a
> java/lang/Object),
>    which is held by "Thread-1"
> "Thread-1":
>    waiting to lock Monitor at 0x0094c99c (Object at 0x03f02e50, a [I),
>    which is held by "main"
>
> Found a total of 1 deadlock.
>
> ----------------- 0 -----------------
> 0x77c870f4    ntdll!KiFastSystemCallRet
> 0x76a9c3d3    kernel32!WaitForSingleObjectEx + 0x43
> 0x76a9c382    kernel32!WaitForSingleObject + 0x12
> 0x00e64d7b    java + 0x4d7b
> 0x00e631ca    java + 0x31ca
> 0x00e642ab    java + 0x42ab
> 0x00e63440    java + 0x3440
> 0x00130138        ????????
> ----------------- 1 -----------------
> 0x77c870f4    ntdll!KiFastSystemCallRet
> 0x76a9c3d3    kernel32!WaitForSingleObjectEx + 0x43
> 0x76a9c382    kernel32!WaitForSingleObject + 0x12
> 0x5bfd6b3d    jvm!_JVM_FindSignal at 4 + 0x286d
> 0x5bf7857e    jvm!JVM_GetThreadStateNames + 0x4c12e
> 0x5bf78b23    jvm!JVM_GetThreadStateNames + 0x4c6d3
> 0x5bf8e107    jvm!JVM_GetThreadStateNames + 0x61cb7
> 0x5bf8e6be    jvm!JVM_GetThreadStateNames + 0x6226e
> 0x5bea1b28    jvm + 0x71b28
> 0x01aa1cef    * java.lang.ClassLoader.loadClass(java.lang.String,
> boolean) bci:8 line:406 (Interpreted frame)
> 0x01a94054    *
> sun.misc.Launcher$AppClassLoader.loadClass(java.lang.String, boolean)
> bci:36 line:308 (Interpreted frame)
> 0x01a94054    * java.lang.ClassLoader.loadClass(java.lang.String) bci:3
> line:357 (Interpreted frame)
> 0x01a903d7 <StubRoutines>
> 0x5bf72285    jvm!JVM_GetThreadStateNames + 0x45e35
> 0x5c0370be    jvm!_JVM_FindSignal at 4 + 0x62dee
> 0x5bf7231e    jvm!JVM_GetThreadStateNames + 0x45ece
> 0x5bf724a6    jvm!JVM_GetThreadStateNames + 0x46056
> 0x5bf7258f    jvm!JVM_GetThreadStateNames + 0x4613f
> 0x5be77d6f    jvm + 0x47d6f
> 0x5be7822a    jvm + 0x4822a
> 0x5be794c0    jvm + 0x494c0
> 0x5be7950a    jvm + 0x4950a
> 0x5bf20de5    jvm!_JVM_FindClassFromClass at 16 + 0x135
> 0x73b515cd    verify + 0x15cd
> 0x73b51d53    verify + 0x1d53
> 0x73b52c67    verify + 0x2c67
> 0x14d6f5e8        ????????
> Locked ownable synchronizers:
>      - None
> ----------------- 2 -----------------
> 0x77c870f4    ntdll!KiFastSystemCallRet
> 0x76a9c3d3    kernel32!WaitForSingleObjectEx + 0x43
> 0x76a9c382    kernel32!WaitForSingleObject + 0x12
> 0x5bfd6b3d    jvm!_JVM_FindSignal at 4 + 0x286d
> 0x5bf73ecc    jvm!JVM_GetThreadStateNames + 0x47a7c
> 0x5bf741fc    jvm!JVM_GetThreadStateNames + 0x47dac
> 0x5bf99671    jvm!JVM_GetThreadStateNames + 0x6d221
> 0x5bf99a32    jvm!JVM_GetThreadStateNames + 0x6d5e2
> 0x5bfd9186    jvm!_JVM_FindSignal at 4 + 0x4eb6
> 0x614dc556    msvcr100!_endthreadex + 0x3a
> 0x614dc600    msvcr100!_endthreadex + 0xe4
> 0x76a9ee1c    kernel32!BaseThreadInitThunk + 0x12
> 0x77ca37eb    ntdll!RtlInitializeExceptionChain + 0xef
> 0x77ca37be    ntdll!RtlInitializeExceptionChain + 0xc2
> ----------------- 3 -----------------
> 0x77c870f4    ntdll!KiFastSystemCallRet
> 0x76a9c3d3    kernel32!WaitForSingleObjectEx + 0x43
> 0x76a9c382    kernel32!WaitForSingleObject + 0x12
> 0x5bfd6c49    jvm!_JVM_FindSignal at 4 + 0x2979
> 0x5bf78f56    jvm!JVM_GetThreadStateNames + 0x4cb06
> 0x5bf8e334    jvm!JVM_GetThreadStateNames + 0x61ee4
> 0x5bf20c15    jvm!_JVM_MonitorWait at 16 + 0x95
> 0x01a9ac63    * java.lang.Object.wait(long) bci:0 (Interpreted frame)
> 0x01a940f4    * java.lang.Object.wait() bci:2 line:502 (Interpreted frame)
> 0x01a940f4    * java.lang.ref.Reference$ReferenceHandler.run() bci:36
> line:157 (Interpreted frame)
> 0x01a903d7 <StubRoutines>
> 0x5bf72285    jvm!JVM_GetThreadStateNames + 0x45e35
> 0x5c0370be    jvm!_JVM_FindSignal at 4 + 0x62dee
> 0x5bf7231e    jvm!JVM_GetThreadStateNames + 0x45ece
> 0x5bf724a6    jvm!JVM_GetThreadStateNames + 0x46056
> 0x5bf72517    jvm!JVM_GetThreadStateNames + 0x460c7
> 0x5bf1de0f    jvm!jio_printf + 0x9f
> 0x5bf945fc    jvm!JVM_GetThreadStateNames + 0x681ac
> 0x5bf94e8a    jvm!JVM_GetThreadStateNames + 0x68a3a
> 0x5bfd9186    jvm!_JVM_FindSignal at 4 + 0x4eb6
> 0x614dc556    msvcr100!_endthreadex + 0x3a
> 0x614dc600    msvcr100!_endthreadex + 0xe4
> 0x76a9ee1c    kernel32!BaseThreadInitThunk + 0x12
> 0x77ca37eb    ntdll!RtlInitializeExceptionChain + 0xef
> 0x77ca37be    ntdll!RtlInitializeExceptionChain + 0xc2
> Locked ownable synchronizers:
>      - None
> ----------------- 4 -----------------
> 0x77c870f4    ntdll!KiFastSystemCallRet
> 0x76a9c3d3    kernel32!WaitForSingleObjectEx + 0x43
> 0x76a9c382    kernel32!WaitForSingleObject + 0x12
> 0x5bfd6c49    jvm!_JVM_FindSignal at 4 + 0x2979
> 0x5bf78f56    jvm!JVM_GetThreadStateNames + 0x4cb06
> 0x5bf8e334    jvm!JVM_GetThreadStateNames + 0x61ee4
> 0x5bf20c15    jvm!_JVM_MonitorWait at 16 + 0x95
> 0x01a9ac63    * java.lang.Object.wait(long) bci:0 (Interpreted frame)
> 0x01a940f4    * java.lang.ref.ReferenceQueue.remove(long) bci:44
> line:142 (Interpreted frame)
> 0x01a94054    * java.lang.ref.ReferenceQueue.remove() bci:2 line:158
> (Interpreted frame)
> 0x01a94054    * java.lang.ref.Finalizer$FinalizerThread.run() bci:36
> line:209 (Interpreted frame)
> 0x01a903d7 <StubRoutines>
> 0x5bf72285    jvm!JVM_GetThreadStateNames + 0x45e35
> 0x5c0370be    jvm!_JVM_FindSignal at 4 + 0x62dee
> 0x5bf7231e    jvm!JVM_GetThreadStateNames + 0x45ece
> 0x5bf724a6    jvm!JVM_GetThreadStateNames + 0x46056
> 0x5bf72517    jvm!JVM_GetThreadStateNames + 0x460c7
> 0x5bf1de0f    jvm!jio_printf + 0x9f
> 0x5bf945fc    jvm!JVM_GetThreadStateNames + 0x681ac
> 0x5bf94e8a    jvm!JVM_GetThreadStateNames + 0x68a3a
> 0x5bfd9186    jvm!_JVM_FindSignal at 4 + 0x4eb6
> 0x614dc556    msvcr100!_endthreadex + 0x3a
> 0x614dc600    msvcr100!_endthreadex + 0xe4
> 0x76a9ee1c    kernel32!BaseThreadInitThunk + 0x12
> 0x77ca37eb    ntdll!RtlInitializeExceptionChain + 0xef
> 0x77ca37be    ntdll!RtlInitializeExceptionChain + 0xc2
> Locked ownable synchronizers:
>      - None
> ----------------- 5 -----------------
> 0x77c870f4    ntdll!KiFastSystemCallRet
> 0x76a9c3d3    kernel32!WaitForSingleObjectEx + 0x43
> 0x76a9c382    kernel32!WaitForSingleObject + 0x12
> 0x5bfd6b3d    jvm!_JVM_FindSignal at 4 + 0x286d
> 0x5bf7857e    jvm!JVM_GetThreadStateNames + 0x4c12e
> 0x5bf78b23    jvm!JVM_GetThreadStateNames + 0x4c6d3
> 0x5bf8e107    jvm!JVM_GetThreadStateNames + 0x61cb7
> 0x5bf8e6be    jvm!JVM_GetThreadStateNames + 0x6226e
> 0x5bf8e78f    jvm!JVM_GetThreadStateNames + 0x6233f
> 0x5bee0d10    jvm + 0xb0d10
> 0x5bee2854    jvm + 0xb2854
> 0x5bee3548    jvm + 0xb3548
> 0x5bea5641    jvm + 0x75641
> 0x01aa17be    *
> au.net.zeus.collection.ReferenceFactory.create(java.lang.Object,
> au.net.zeus.collection.RefQueue, au.net.zeus.collection.Ref) bci:229
> line:60 (Interpreted frame)
> 0x01a94054    *
> au.net.zeus.collection.ReferenceProcessor.referenced(java.lang.Object,
> boolean, boolean) bci:37 line:128 (Interpreted frame)
> 0x01a94054    *
> au.net.zeus.collection.ReferenceProcessor.referenced(java.lang.Object,
> boolean, boolean) bci:4 line:44 (Interpreted frame)
> 0x01a94089    *
> au.net.zeus.collection.ReferenceMap.wrapKey(java.lang.Object, boolean,
> boolean) bci:7 line:248 (Interpreted frame)
> 0x01a94054    *
> au.net.zeus.collection.ReferenceConcurrentMap.putIfAbsent(java.lan
> g.Object,
> java.lang.Object) bci:8 line:67 (Interpreted frame)
> 0x01a94089    *
> org.apache.river.api.security.CombinerSecurityManager.checkPermiss
> ion(java.security.Permission,
> java.lang.Object) bci:161 line:260 (Interpreted frame)
> 0x01a940f4    *
> org.apache.river.api.security.CombinerSecurityManager.checkPermiss
> ion(java.security.Permission)
> bci:27 line:202 (Interpreted frame)
> 0x01a940f4    * java.net.NetworkInterface.getHardwareAddress() bci:18
> line:447 (Interpreted frame)
> 0x01a94054    * java.util.concurrent.ThreadLocalRandom.initialSeed()
> bci:116 line:158 (Interpreted frame)
> 0x01a93e20    * java.util.concurrent.ThreadLocalRandom.<clinit>() bci:14
> line:137 (Interpreted frame)
> 0x01a903d7 <StubRoutines>
> 0x5bf72285    jvm!JVM_GetThreadStateNames + 0x45e35
> 0x5c0370be    jvm!_JVM_FindSignal at 4 + 0x62dee
> 0x5bf7231e    jvm!JVM_GetThreadStateNames + 0x45ece
> 0x5bee0f44    jvm + 0xb0f44
> 0x5bee2b21    jvm + 0xb2b21
> 0x5bee3548    jvm + 0xb3548
> 0x5bea9796    jvm + 0x79796
> 0x5beaa7b2    jvm + 0x7a7b2
> 0x5bea5dc7    jvm + 0x75dc7
> 0x01aa12ae    *
> java.util.concurrent.ConcurrentHashMap.fullAddCount(long, boolean) bci:0
> line:2526 (Interpreted frame)
> 0x01a940f4    * java.util.concurrent.ConcurrentHashMap.addCount(long,
> int) bci:104 line:2266 (Interpreted frame)
> 0x01a940f4    *
> java.util.concurrent.ConcurrentHashMap.putVal(java.lang.Object,
> java.lang.Object, boolean) bci:357 line:1070 (Interpreted frame)
> 0x01a94054    *
> java.util.concurrent.ConcurrentHashMap.putIfAbsent(java.lang.Object,
> java.lang.Object) bci:4 line:1535 (Interpreted frame)
> 0x01a94054    *
> java.lang.ClassLoader.getClassLoadingLock(java.lang.String) bci:23
> line:463 (Interpreted frame)
> 0x01a94054    * java.lang.ClassLoader.loadClass(java.lang.String,
> boolean) bci:2 line:404 (Interpreted frame)
> 0x01a94054    * java.lang.ClassLoader.loadClass(java.lang.String,
> boolean) bci:38 line:411 (Interpreted frame)
> 0x01a94054    *
> sun.misc.Launcher$AppClassLoader.loadClass(java.lang.String, boolean)
> bci:36 line:308 (Interpreted frame)
> 0x01a94054    * java.lang.ClassLoader.loadClass(java.lang.String) bci:3
> line:357 (Interpreted frame)
> 0x01a903d7 <StubRoutines>
> 0x5bf72285    jvm!JVM_GetThreadStateNames + 0x45e35
> 0x5c0370be    jvm!_JVM_FindSignal at 4 + 0x62dee
> 0x5bf7231e    jvm!JVM_GetThreadStateNames + 0x45ece
> 0x5bf724a6    jvm!JVM_GetThreadStateNames + 0x46056
> 0x5bf7258f    jvm!JVM_GetThreadStateNames + 0x4613f
> 0x5be77d6f    jvm + 0x47d6f
> 0x5be7822a    jvm + 0x4822a
> 0x5be794c0    jvm + 0x494c0
> 0x5be7950a    jvm + 0x4950a
> 0x5be79f66    jvm + 0x49f66
> 0x5be715c7    jvm + 0x415c7
> 0x5be7a53c    jvm + 0x4a53c
> 0x5be817e2    jvm + 0x517e2
> 0x5be822d9    jvm + 0x522d9
> 0x5be82414    jvm + 0x52414
> 0x5bed85dd    jvm + 0xa85dd
> 0x5bee0d80    jvm + 0xb0d80
> 0x5bee2854    jvm + 0xb2854
> 0x5bee3548    jvm + 0xb3548
> 0x5bea5641    jvm + 0x75641
> 0x01aa17be    *
> org.cliffc.high_scale_lib.NonBlockingHashMap$SnapshotK.<init>(org.
cliffc.high_scale_lib.NonBlockingHashMap)
> bci:10 line:1167 (Interpreted frame)
> 0x01a940f4    *
> org.cliffc.high_scale_lib.NonBlockingHashMap$2.iterator() bci:8
> line:1200 (Interpreted frame)
> 0x01a94089    *
> au.net.zeus.collection.ReferenceProcessor$EnqueGarbageTask.run() bci:15
> line:166 (Interpreted frame)
> 0x01a94129    * java.util.concurrent.Executors$RunnableAdapter.call()
> bci:4 line:511 (Interpreted frame)
> 0x01a94089    * java.util.concurrent.FutureTask.runAndReset() bci:47
> line:308 (Interpreted frame)
> 0x01a93ba0    *
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTa
> sk.access$301(java.util.concurrent.ScheduledThreadPoolExecutor$Sch
> eduledFutureTask)
> bci:1 line:180 (Interpreted frame)
> 0x01a93ba0    *
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTa
> sk.run()
> bci:37 line:294 (Interpreted frame)
> 0x01a94129    *
> java.util.concurrent.ThreadPoolExecutor.runWorker(java.util.concur
> rent.ThreadPoolExecutor$Worker)
> bci:95 line:1142 (Interpreted frame)
> 0x01a940f4    * java.util.concurrent.ThreadPoolExecutor$Worker.run()
> bci:5 line:617 (Interpreted frame)
> 0x01a94129    * java.lang.Thread.run() bci:11 line:744 (Interpreted frame)
> 0x01a903d7 <StubRoutines>
> 0x5bf72285    jvm!JVM_GetThreadStateNames + 0x45e35
> 0x5c0370be    jvm!_JVM_FindSignal at 4 + 0x62dee
> 0x5bf7231e    jvm!JVM_GetThreadStateNames + 0x45ece
> 0x5bf724a6    jvm!JVM_GetThreadStateNames + 0x46056
> 0x5bf72517    jvm!JVM_GetThreadStateNames + 0x460c7
> 0x5bf1de0f    jvm!jio_printf + 0x9f
> 0x5bf945fc    jvm!JVM_GetThreadStateNames + 0x681ac
> 0x5bf94e8a    jvm!JVM_GetThreadStateNames + 0x68a3a
> 0x5bfd9186    jvm!_JVM_FindSignal at 4 + 0x4eb6
> 0x614dc556    msvcr100!_endthreadex + 0x3a
> 0x614dc600    msvcr100!_endthreadex + 0xe4
> 0x76a9ee1c    kernel32!BaseThreadInitThunk + 0x12
> 0x77ca37eb    ntdll!RtlInitializeExceptionChain + 0xef
> 0x77ca37be    ntdll!RtlInitializeExceptionChain + 0xc2
> Locked ownable synchronizers:
>      - <0x03d58650>, (a java/util/concurrent/ThreadPoolExecutor$Worker)
> ----------------- 6 -----------------
> 0x77c870f4    ntdll!KiFastSystemCallRet
> 0x76a9ee1c    kernel32!BaseThreadInitThunk + 0x12
> 0x77ca37eb    ntdll!RtlInitializeExceptionChain + 0xef
> 0x77ca37be    ntdll!RtlInitializeExceptionChain + 0xc2
> ----------------- 7 -----------------
> 0x77c870f4    ntdll!KiFastSystemCallRet
> 0x76a9c3d3    kernel32!WaitForSingleObjectEx + 0x43
> 0x76a9c382    kernel32!WaitForSingleObject + 0x12
> 0x5bfd9539    jvm!_JVM_FindSignal at 4 + 0x5269
> 0x5bfd9607    jvm!_JVM_FindSignal at 4 + 0x5337
> 0x5bf945fc    jvm!JVM_GetThreadStateNames + 0x681ac
> 0x5bf94e8a    jvm!JVM_GetThreadStateNames + 0x68a3a
> 0x5bfd9186    jvm!_JVM_FindSignal at 4 + 0x4eb6
> 0x614dc556    msvcr100!_endthreadex + 0x3a
> 0x614dc600    msvcr100!_endthreadex + 0xe4
> 0x76a9ee1c    kernel32!BaseThreadInitThunk + 0x12
> 0x77ca37eb    ntdll!RtlInitializeExceptionChain + 0xef
> 0x77ca37be    ntdll!RtlInitializeExceptionChain + 0xc2
> Locked ownable synchronizers:
>      - None
> ----------------- 8 -----------------
> 0x77c870f4    ntdll!KiFastSystemCallRet
> 0x76a9c3d3    kernel32!WaitForSingleObjectEx + 0x43
> 0x76a9c382    kernel32!WaitForSingleObject + 0x12
> 0x5bfd6c49    jvm!_JVM_FindSignal at 4 + 0x2979
> 0x5bf7856b    jvm!JVM_GetThreadStateNames + 0x4c11b
> 0x5bf78b23    jvm!JVM_GetThreadStateNames + 0x4c6d3
> 0x5bf8e107    jvm!JVM_GetThreadStateNames + 0x61cb7
> 0x5bf8e6be    jvm!JVM_GetThreadStateNames + 0x6226e
> 0x5bf8e78f    jvm!JVM_GetThreadStateNames + 0x6233f
> 0x5bee0d10    jvm + 0xb0d10
> 0x5bee2854    jvm + 0xb2854
> 0x5bee3548    jvm + 0xb3548
> 0x5bea5641    jvm + 0x75641
> 0x01aa17be    *
> au.net.zeus.collection.ReferenceFactory.create(java.lang.Object,
> au.net.zeus.collection.RefQueue, au.net.zeus.collection.Ref) bci:229
> line:60 (Interpreted frame)
> 0x01a94054    *
> au.net.zeus.collection.ReferenceProcessor.referenced(java.lang.Object,
> boolean, boolean) bci:37 line:128 (Interpreted frame)
> 0x01a94054    *
> au.net.zeus.collection.ReferenceProcessor.referenced(java.lang.Object,
> boolean, boolean) bci:4 line:44 (Interpreted frame)
> 0x01a94089    *
> au.net.zeus.collection.ReferenceMap.wrapKey(java.lang.Object, boolean,
> boolean) bci:7 line:248 (Interpreted frame)
> 0x01a94054    *
> au.net.zeus.collection.ReferenceConcurrentMap.putIfAbsent(java.lan
> g.Object,
> java.lang.Object) bci:8 line:67 (Interpreted frame)
> 0x01a94089    *
> org.apache.river.api.security.CombinerSecurityManager.checkPermiss
> ion(java.security.Permission,
> java.lang.Object) bci:161 line:260 (Interpreted frame)
> 0x01a940f4    *
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.checkMBeanTr
> ustPermission(java.lang.Class)
> bci:59 line:1848 (Interpreted frame)
> 0x01a940f4    *
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBea
> n(java.lang.Object,
> javax.management.ObjectName) bci:25 line:322 (Interpreted frame)
> 0x01a94089    * com.sun.jmx.mbeanserver.JmxMBeanServer$2.run() bci:17
> line:1225 (Interpreted frame)
> 0x01a903d7 <StubRoutines>
> 0x5bf72285    jvm!JVM_GetThreadStateNames + 0x45e35
> 0x5c0370be    jvm!_JVM_FindSignal at 4 + 0x62dee
> 0x5bf7231e    jvm!JVM_GetThreadStateNames + 0x45ece
> 0x5bf299ed    jvm!_JVM_DoPrivileged at 20 + 0x2bd
> 0x73b21047
> java_73b20000!_Java_java_security_AccessController_doPrivileged__L
> java_security_PrivilegedExceptionAction_2 at 12
> + 0x15
> 0x01a94054    * com.sun.jmx.mbeanserver.JmxMBeanServer.initialize()
> bci:25 line:1223 (Interpreted frame)
> 0x01a940f4    *
> com.sun.jmx.mbeanserver.JmxMBeanServer.<init>(java.lang.String,
> javax.management.MBeanServer, javax.management.MBeanServerDelegate,
> com.sun.jmx.mbeanserver.MBeanInstantiator, boolean, boolean) bci:133
> line:255 (Interpreted frame)
> 0x01a940f4    *
> com.sun.jmx.mbeanserver.JmxMBeanServer.newMBeanServer(java.lang.String,
> javax.management.MBeanServer, javax.management.MBeanServerDelegate,
> boolean) bci:13 line:1437 (Interpreted frame)
> 0x01a94054    *
> javax.management.MBeanServerBuilder.newMBeanServer(java.lang.String,
> javax.management.MBeanServer, javax.management.MBeanServerDelegate)
> bci:4 line:110 (Interpreted frame)
> 0x01a94054    *
> javax.management.MBeanServerFactory.newMBeanServer(java.lang.String)
> bci:36 line:329 (Interpreted frame)
> 0x01a94054    *
> javax.management.MBeanServerFactory.createMBeanServer(java.lang.String)
> bci:6 line:231 (Interpreted frame)
> 0x01a94054    * javax.management.MBeanServerFactory.createMBeanServer()
> bci:1 line:192 (Interpreted frame)
> 0x01a94054    *
> java.lang.management.ManagementFactory.getPlatformMBeanServer() bci:29
> line:468 (Interpreted frame)
> 0x01a94054    *
> sun.management.jmxremote.ConnectorBootstrap.startLocalConnectorServer()
> bci:66 line:518 (Interpreted frame)
> 0x01a94054    * sun.management.Agent.startLocalManagementAgent() bci:13
> line:138 (Interpreted frame)
> 0x01a940f4    * sun.management.Agent.startAgent(java.util.Properties)
> bci:76 line:260 (Interpreted frame)
> 0x01a940f4    * sun.management.Agent.agentmain(java.lang.String) bci:45
> line:128 (Interpreted frame)
> 0x01a903d7 <StubRoutines>
> 0x5bf72285    jvm!JVM_GetThreadStateNames + 0x45e35
> 0x5c0370be    jvm!_JVM_FindSignal at 4 + 0x62dee
> 0x5bf7231e    jvm!JVM_GetThreadStateNames + 0x45ece
> 0x5bf7e73a    jvm!JVM_GetThreadStateNames + 0x522ea
> 0x5bf7e993    jvm!JVM_GetThreadStateNames + 0x52543
> 0x5bf22b03    jvm!_JVM_InvokeMethod at 16 + 0xb3
> 0x73b23a6e
> java_73b20000!_Java_sun_reflect_NativeMethodAccessorImpl_invoke0 at 20 + 0x15
> 0x01a94054    *
> sun.reflect.NativeMethodAccessorImpl.invoke(java.lang.Object,
> java.lang.Object[]) bci:100 line:62 (Interpreted frame)
> 0x01a94054    *
> sun.reflect.DelegatingMethodAccessorImpl.invoke(java.lang.Object,
> java.lang.Object[]) bci:6 line:43 (Interpreted frame)
> 0x01a94089    * java.lang.reflect.Method.invoke(java.lang.Object,
> java.lang.Object[]) bci:56 line:483 (Interpreted frame)
> 0x01a94054    *
> sun.instrument.InstrumentationImpl.loadClassAndStartAgent(java.lan
> g.String,
> java.lang.String, java.lang.String) bci:192 line:388 (Interpreted frame)
> 0x01a940f4    *
> sun.instrument.InstrumentationImpl.loadClassAndCallAgentmain(java.
> lang.String,
> java.lang.String) bci:5 line:411 (Interpreted frame)
> 0x01a903d7 <StubRoutines>
> 0x5bf72285    jvm!JVM_GetThreadStateNames + 0x45e35
> 0x5c0370be    jvm!_JVM_FindSignal at 4 + 0x62dee
> 0x5bf7231e    jvm!JVM_GetThreadStateNames + 0x45ece
> 0x5befe951    jvm!JNI_GetCreatedJavaVMs + 0x71a1
> 0x5bf01788    jvm!JNI_GetCreatedJavaVMs + 0x9fd8
> 0x6db62878    instrument!Agent_OnAttach + 0x76b
> 0x6db63eea    instrument!Agent_OnAttach + 0x1ddd
> 0x6db6234a    instrument!Agent_OnAttach + 0x23d
> 0x5bf3c50c    jvm!JVM_GetThreadStateNames + 0x100bc
> 0x5bf9b05e    jvm!JVM_GetThreadStateNames + 0x6ec0e
> 0x5bf945fc    jvm!JVM_GetThreadStateNames + 0x681ac
> 0x5bf94e8a    jvm!JVM_GetThreadStateNames + 0x68a3a
> 0x5bfd9186    jvm!_JVM_FindSignal at 4 + 0x4eb6
> 0x614dc556    msvcr100!_endthreadex + 0x3a
> 0x614dc600    msvcr100!_endthreadex + 0xe4
> 0x76a9ee1c    kernel32!BaseThreadInitThunk + 0x12
> 0x77ca37eb    ntdll!RtlInitializeExceptionChain + 0xef
> 0x77ca37be    ntdll!RtlInitializeExceptionChain + 0xc2
> Locked ownable synchronizers:
>      - None
> ----------------- 9 -----------------
> 0x77c870f4    ntdll!KiFastSystemCallRet
> 0x76a9c3d3    kernel32!WaitForSingleObjectEx + 0x43
> 0x76a9c382    kernel32!WaitForSingleObject + 0x12
> 0x5bfd6b3d    jvm!_JVM_FindSignal at 4 + 0x286d
> 0x5bf73ecc    jvm!JVM_GetThreadStateNames + 0x47a7c
> 0x5bf7424a    jvm!JVM_GetThreadStateNames + 0x47dfa
> 0x5be9253b    jvm + 0x6253b
> 0x5bf945fc    jvm!JVM_GetThreadStateNames + 0x681ac
> 0x5bf94e8a    jvm!JVM_GetThreadStateNames + 0x68a3a
> 0x5bfd9186    jvm!_JVM_FindSignal at 4 + 0x4eb6
> 0x614dc556    msvcr100!_endthreadex + 0x3a
> 0x614dc600    msvcr100!_endthreadex + 0xe4
> 0x76a9ee1c    kernel32!BaseThreadInitThunk + 0x12
> 0x77ca37eb    ntdll!RtlInitializeExceptionChain + 0xef
> 0x77ca37be    ntdll!RtlInitializeExceptionChain + 0xc2
> Locked ownable synchronizers:
>      - None
> ----------------- 10 -----------------
> 0x77c870f4    ntdll!KiFastSystemCallRet
> 0x76a9c3d3    kernel32!WaitForSingleObjectEx + 0x43
> 0x76a9c382    kernel32!WaitForSingleObject + 0x12
> 0x5bfd6c49    jvm!_JVM_FindSignal at 4 + 0x2979
> 0x5bf73ec1    jvm!JVM_GetThreadStateNames + 0x47a71
> 0x5bf741fc    jvm!JVM_GetThreadStateNames + 0x47dac
> 0x5bf829a5    jvm!JVM_GetThreadStateNames + 0x56555
> 0x5bf945fc    jvm!JVM_GetThreadStateNames + 0x681ac
> 0x5bf94e8a    jvm!JVM_GetThreadStateNames + 0x68a3a
> 0x5bfd9186    jvm!_JVM_FindSignal at 4 + 0x4eb6
> 0x614dc556    msvcr100!_endthreadex + 0x3a
> 0x614dc600    msvcr100!_endthreadex + 0xe4
> 0x76a9ee1c    kernel32!BaseThreadInitThunk + 0x12
> 0x77ca37eb    ntdll!RtlInitializeExceptionChain + 0xef
> 0x77ca37be    ntdll!RtlInitializeExceptionChain + 0xc2
> Locked ownable synchronizers:
>      - None
> ----------------- 11 -----------------
> 0x77c870f4    ntdll!KiFastSystemCallRet
> 0x76a9c3d3    kernel32!WaitForSingleObjectEx + 0x43
> 0x76a9c382    kernel32!WaitForSingleObject + 0x12
> 0x5bfd6b3d    jvm!_JVM_FindSignal at 4 + 0x286d
> 0x5bf73ecc    jvm!JVM_GetThreadStateNames + 0x47a7c
> 0x5bf741fc    jvm!JVM_GetThreadStateNames + 0x47dac
> 0x5bf8f904    jvm!JVM_GetThreadStateNames + 0x634b4
> 0x5bf8f9a7    jvm!JVM_GetThreadStateNames + 0x63557
> 0x5bfd9186    jvm!_JVM_FindSignal at 4 + 0x4eb6
> 0x614dc556    msvcr100!_endthreadex + 0x3a
> 0x614dc600    msvcr100!_endthreadex + 0xe4
> 0x76a9ee1c    kernel32!BaseThreadInitThunk + 0x12
> 0x77ca37eb    ntdll!RtlInitializeExceptionChain + 0xef
> 0x77ca37be    ntdll!RtlInitializeExceptionChain + 0xc2
>
>
> _______________________________________________
> Concurrency-interest mailing list
> Concurrency-interest at cs.oswego.edu
> http://cs.oswego.edu/mailman/listinfo/concurrency-interest



More information about the Concurrency-interest mailing list