We're updating the issue view to help you get more done. 

Code patching caused by classloading can cause deadlock on PPC in dacapo 2006-MR-2 eclipse

Description

Running eclipse from DaCapo 2006-MR-2 always leads to a deadlock (or something that looks like it, e.g. a livelock) on the PPC machine I have access to. The issue always occurs when loading the same class (see output below).

I have added some tracing code to the classloading subsystem and have tracked the issue down to the use of code patching. Specifically, there is no progress after RVMThread.softHandshake has been called with the codePatchSyncRequestVisitor visitor in OptCompiledMethod.applyCodePatches. This issue only affects PPC because the problematic code is architecture-specific and thus won't be executed on IA32.

The last lines of the output are posted below. They include a stack dump obtained from triggering the debugger thread via kill -3. The complete log and the patch used to create it can be found in the attached archive, which can be extracted using tar xvfj.

loading "Lorg/eclipse/core/internal/boot/PlatformURLHandler;" with org.eclipse.core.runtime.adaptor.EclipseClassLoader@1e70248b
RVMClass: (begin) load file Lorg/eclipse/core/internal/boot/PlatformURLHandler;
loading "Lorg/osgi/service/url/AbstractURLStreamHandlerService;" with SystemAppCL
RVMClass: (begin) load file Lorg/osgi/service/url/AbstractURLStreamHandlerService;
loading "Lorg/osgi/service/url/URLStreamHandlerService;" with SystemAppCL
RVMClass: (begin) load file Lorg/osgi/service/url/URLStreamHandlerService;
RVMClass: (end) load file Lorg/osgi/service/url/URLStreamHandlerService;
[Loaded org.osgi.service.url.URLStreamHandlerService]
RVMClass: (begin) resolve org.osgi.service.url.URLStreamHandlerService
[Preparing org.osgi.service.url.URLStreamHandlerService]
RVMClass: (end) resolve org.osgi.service.url.URLStreamHandlerService
RVMClass: (end) load file Lorg/osgi/service/url/AbstractURLStreamHandlerService;
[Loaded org.osgi.service.url.AbstractURLStreamHandlerService]
RVMClass: (begin) resolve org.osgi.service.url.AbstractURLStreamHandlerService
[Preparing org.osgi.service.url.AbstractURLStreamHandlerService]
RVMClass: (end) resolve org.osgi.service.url.AbstractURLStreamHandlerService
RVMClass: (end) load file Lorg/eclipse/core/internal/boot/PlatformURLHandler;
[Loaded org.eclipse.core.internal.boot.PlatformURLHandler]
RVMClass: (begin) resolve org.eclipse.core.internal.boot.PlatformURLHandler
[Preparing org.eclipse.core.internal.boot.PlatformURLHandler]
RVMClass: (end) resolve org.eclipse.core.internal.boot.PlatformURLHandler
RuntimeEntrypoints.initializeClassForDynamicLink: (begin) org.eclipse.core.internal.boot.PlatformURLHandler
RVMClass: (begin) instantiate org.eclipse.core.internal.boot.PlatformURLHandler
RVMClass: (begin) instantiate org.osgi.service.url.AbstractURLStreamHandlerService
RVMClass: (begin) instantiate org.osgi.service.url.URLStreamHandlerService
RVMClass: (end) instantiate org.osgi.service.url.URLStreamHandlerService
RVMClass: (end) instantiate org.osgi.service.url.AbstractURLStreamHandlerService
RVMClass: (end) instantiate org.eclipse.core.internal.boot.PlatformURLHandler
RVMClass: (begin) initialize org.eclipse.core.internal.boot.PlatformURLHandler
[Initializing org.eclipse.core.internal.boot.PlatformURLHandler]
[Initializing org.eclipse.core.internal.boot.PlatformURLHandler] - Initializing super class org.osgi.service.url.AbstractURLStreamHandlerService
RVMClass: (begin) initialize org.osgi.service.url.AbstractURLStreamHandlerService
[Initializing org.osgi.service.url.AbstractURLStreamHandlerService]
[Initializing org.osgi.service.url.AbstractURLStreamHandlerService] - Initializing super class java.net.URLStreamHandler
[Initializing org.osgi.service.url.AbstractURLStreamHandlerService] - Finished initializing super class java.net.URLStreamHandler
[Initializing org.osgi.service.url.AbstractURLStreamHandlerService] - No class initializer to run
[Initializing org.osgi.service.url.AbstractURLStreamHandlerService] - Notifying opt-compiler
CLDM - About to handle overriden methods for org.osgi.service.url.AbstractURLStreamHandlerService
CLDM - Handling overridden methods of org.osgi.service.url.AbstractURLStreamHandlerService - About to process class methods
CLDM - Processing override for methods for < BootstrapCL, Ljava/net/URLStreamHandler; >.setURL (Ljava/net/URL;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/StringV
CLDM - invalidating method cm Opt-compiled method for < BootstrapCL, Ljava/net/URLStreamHandler; >.parseURL (Ljava/net/URL;Ljava/lang/String;II)V, toString() from Object: org.jikesrvm.compilers.opt.runtimesupport.OptCompiledMethod@1461825d, opt-Level: 2 - About to hit synchronization block
CLDM - invalidating method cm Opt-compiled method for < BootstrapCL, Ljava/net/URLStreamHandler; >.parseURL (Ljava/net/URL;Ljava/lang/String;II)V, toString() from Object: org.jikesrvm.compilers.opt.runtimesupport.OptCompiledMethod@1461825d, opt-Level: 2 - in synchro: About to apply code patches
CLDM - invalidating method cm Opt-compiled method for < BootstrapCL, Ljava/net/URLStreamHandler; >.parseURL (Ljava/net/URL;Ljava/lang/String;II)V, toString() from Object: org.jikesrvm.compilers.opt.runtimesupport.OptCompiledMethod@1461825d, opt-Level: 2 - in synchro: Code patches applied
CLDM - invalidating method cm Opt-compiled method for < BootstrapCL, Ljava/net/URLStreamHandler; >.parseURL (Ljava/net/URL;Ljava/lang/String;II)V, toString() from Object: org.jikesrvm.compilers.opt.runtimesupport.OptCompiledMethod@1461825d, opt-Level: 2 - Synchronization block finished
CLDM - invalidating method cm Opt-compiled method for < BootstrapCL, Ljava/net/URLStreamHandler; >.parseURL (Ljava/net/URL;Ljava/lang/String;II)V, toString() from Object: org.jikesrvm.compilers.opt.runtimesupport.OptCompiledMethod@1461825d, opt-Level: 2 - About to inform RVMMethod
CLDM - invalidating method cm Opt-compiled method for < BootstrapCL, Ljava/net/URLStreamHandler; >.parseURL (Ljava/net/URL;Ljava/lang/String;II)V, toString() from Object: org.jikesrvm.compilers.opt.runtimesupport.OptCompiledMethod@1461825d, opt-Level: 2 - RVMMethod informed
CLDM - Processing override for methods for < BootstrapCL, Ljava/net/URLStreamHandler; >.getDefaultPort ()I
CLDM - invalidating method cm Opt-compiled method for < BootstrapCL, Ljava/net/URLStreamHandler; >.sameFile (Ljava/net/URL;Ljava/net/URLZ, toString() from Object: org.jikesrvm.compilers.opt.runtimesupport.OptCompiledMethod@14618128, opt-Level: 2 - About to hit synchronization block
CLDM - invalidating method cm Opt-compiled method for < BootstrapCL, Ljava/net/URLStreamHandler; >.sameFile (Ljava/net/URL;Ljava/net/URLZ, toString() from Object: org.jikesrvm.compilers.opt.runtimesupport.OptCompiledMethod@14618128, opt-Level: 2 - in synchro: About to apply code patches
OCM - about to patch code for cm Opt-compiled method for < BootstrapCL, Ljava/net/URLStreamHandler; >.sameFile (Ljava/net/URL;Ljava/net/URLZ, toString() from Object: org.jikesrvm.compilers.opt.runtimesupport.OptCompiledMethod@14618128, opt-Level: 2
OCM - code patch complete for cm Opt-compiled method for < BootstrapCL, Ljava/net/URLStreamHandler; >.sameFile (Ljava/net/URL;Ljava/net/URLZ, toString() from Object: org.jikesrvm.compilers.opt.runtimesupport.OptCompiledMethod@14618128, opt-Level: 2
OCM - ppc specific synchro stuff for Opt-compiled method for < BootstrapCL, Ljava/net/URLStreamHandler; >.sameFile (Ljava/net/URL;Ljava/net/URLZ, toString() from Object: org.jikesrvm.compilers.opt.runtimesupport.OptCompiledMethod@14618128, opt-Level: 2
OCM - ppc specific synchro stuff for Opt-compiled method for < BootstrapCL, Ljava/net/URLStreamHandler; >.sameFile (Ljava/net/URL;Ljava/net/URLZ, toString() from Object: org.jikesrvm.compilers.opt.runtimesupport.OptCompiledMethod@14618128, opt-Level: 2 - about to isync
OCM - ppc specific synchro stuff for Opt-compiled method for < BootstrapCL, Ljava/net/URLStreamHandler; >.sameFile (Ljava/net/URL;Ljava/net/URLZ, toString() from Object: org.jikesrvm.compilers.opt.runtimesupport.OptCompiledMethod@14618128, opt-Level: 2 - isync complete
OCM - ppc specific synchro stuff for Opt-compiled method for < BootstrapCL, Ljava/net/URLStreamHandler; >.sameFile (Ljava/net/URL;Ljava/net/URLZ, toString() from Object: org.jikesrvm.compilers.opt.runtimesupport.OptCompiledMethod@14618128, opt-Level: 2 - about to force sync
OCM - ppc specific synchro stuff for Opt-compiled method for < BootstrapCL, Ljava/net/URLStreamHandler; >.sameFile (Ljava/net/URL;Ljava/net/URLZ, toString() from Object: org.jikesrvm.compilers.opt.runtimesupport.OptCompiledMethod@14618128, opt-Level: 2 - sync forced and complete
OCM - ppc specific synchro stuff for Opt-compiled method for < BootstrapCL, Ljava/net/URLStreamHandler; >.sameFile (Ljava/net/URL;Ljava/net/URLZ, toString() from Object: org.jikesrvm.compilers.opt.runtimesupport.OptCompiledMethod@14618128, opt-Level: 2 - will handshake now
JikesRVM: debug requested, waiting for a thread switch
=== Debug requested - attempting safe VM dump ===
====== Begin Thread Accounting Dump ======
threadBySlot: 0:none, 1:1(5), 2:2(1), 3:3(5), 4:4(4), 5:5(4), 6:6(4), 7:7(4), 8:8(4), 9:9(4), 10:10(4), 11:11(4), 12:12(4), 13:13(5), 14:14(5), 15:15(5), 16:16(5), 17:17(5), 18:18(5), 19:19(5), 20:20(2), 21:none
aboutToTerminate:
freeSlots: 0:21
threads: 0:19(5), 1:2(1), 2:3(5), 3:4(4), 4:5(4), 5:6(4), 6:7(4), 7:8(4), 8:9(4), 9:10(4), 10:11(4), 11:12(4), 12:13(5), 13:14(5), 14:15(5), 15:16(5), 16:17(5), 17:18(5), 18:1(5), 19:20(2)
====== End Thread Accounting Dump ======
Thread Transition Counts:
Sloppy Exec Status Histogram:
0 21
1 1000077
2 575543
3 22
4 1115
5 8051
6 59
7 2
Status At Stop-the-world Histogram:
1 26
4 6
5 228
Exec Status Transition Histogram:
0->1 21
1->1 140758
1->2 191856
1->4 204
1->6 3
2->1 190881
2->5 977
3->6 11
4->1 187
4->4 16
4->5 8
5->1 975
5->5 476
6->1 14
Timer ticks = 61554 (0x000000000000f072)
19-main-5-WAITING
acquireCount for my monitor: 311634
yieldpoints taken: 103284 (0x0000000000019374)
yieldpoints taken fully: 102546 (0x0000000000019092)
native entered blocked: 8 (0x0000000000000008)
JNI entered blocked: 3 (0x0000000000000003)
– Stack –
(0x6212ac98 18483) at [0x6212ac98, 0x55da806c] Lorg/jikesrvm/scheduler/RVMThread; waitImpl(Ljava/lang/Object;ZJ)V at line 3201
(0x6212acd8 10) at [0x6212acd8, 0x6193355c] Lorg/jikesrvm/scheduler/RVMThread; wait(Ljava/lang/ObjectV at line 3253
at [0x6212acd8, 0x6193355c] Ljava/lang/Object; wait()V at line 66
(0x6212ace8 20380) at [0x6212ace8, 0x61999e50] Lorg/eclipse/core/runtime/internal/adaptor/Semaphore; acquire()V at line 33
(0x6212ad10 20440) at [0x6212ad10, 0x61885ba4] Lorg/eclipse/core/runtime/adaptor/EclipseStarter; setStartLevel(I)V at line 1121
(0x6212ad58 19505) at [0x6212ad58, 0x61855a68] Lorg/eclipse/core/runtime/adaptor/EclipseStarter; startup([Ljava/lang/String;Ljava/lang/RunnableV at line 291
(0x6212ad98 19502) at [0x6212ad98, 0x6188d2e8] Ldacapo/eclipse/EclipseHarness; startup(Ljava/lang/StringV at line 82
(0x6212ade0 19495) at [0x6212ade0, 0x61858cc8] Ldacapo/eclipse/EclipseHarness; preIteration(Ljava/lang/StringV at line 28
(0x6212ae18 19494) at [0x6212ae18, 0x61884ca0] Ldacapo/Benchmark; run(Ldacapo/Callback;Ljava/lang/String;Z)Z at line 119
(0x6212ae58 19481) at [0x6212ae58, 0x61c06374] Ldacapo/TestHarness; runBenchmark(Ljava/io/File;Ljava/lang/String;Ldacapo/TestHarnessV at line 302
(0x6212aed0 19396) at [0x6212aed0, 0x618471ac] Ldacapo/TestHarness; main([Ljava/lang/StringV at line 242
(0x6212af28 19348) at [0x6212af28, 0x55c4f440] LHarness; main([Ljava/lang/StringV at line 5
(0x6212af40 -1) at [0x6212af40, 0x558804ac] <invisible method>
(0x6212af50 14761) at [0x6212af50, 0x556d9018] Lorg/jikesrvm/runtime/Reflection; outOfLineInvoke(Lorg/jikesrvm/classloader/RVMMethod;Ljava/lang/Object;[Ljava/lang/Object;Z)Ljava/lang/Object; at line 194
(0x6212af90 16357) at [0x6212af90, 0x5597eb58] Lorg/jikesrvm/runtime/Reflection; invoke(Lorg/jikesrvm/classloader/RVMMethod;Lorg/jikesrvm/runtime/ReflectionBase;Ljava/lang/Object;[Ljava/lang/Object;Z)Ljava/lang/Object; at line 76
at [0x6212af90, 0x5597eb58] Lorg/jikesrvm/scheduler/MainThread; run()V at line 201
(0x6212afc0 18470) at [0x6212afc0, 0x55d77098] Lorg/jikesrvm/scheduler/RVMThread; run()V at line 2561
(0x6212afe0 18557) at [0x6212afe0, 0x55d76f28] Lorg/jikesrvm/scheduler/RVMThread; startoff()V at line 2608
2-daemon-system-1-RUNNABLE
acquireCount for my monitor: 59
yieldpoints taken: 0 (0x0000000000000000)
yieldpoints taken fully: 0 (0x0000000000000000)
native entered blocked: 0 (0x0000000000000000)
JNI entered blocked: 0 (0x0000000000000000)
(stack trace will follow if thread is not lost...)
3-daemon-system-5-RUNNABLE
acquireCount for my monitor: 999
yieldpoints taken: 226 (0x00000000000000e2)
yieldpoints taken fully: 226 (0x00000000000000e2)
native entered blocked: 0 (0x0000000000000000)
JNI entered blocked: 0 (0x0000000000000000)
– Stack –
(0x622e7fc8 17199) at [0x622e7fc8, 0x55d77080] Lorg/jikesrvm/scheduler/FinalizerThread; run()V at line 78
(0x622e7fe0 18557) at [0x622e7fe0, 0x55d76f28] Lorg/jikesrvm/scheduler/RVMThread; startoff()V at line 2606
4-daemon-system-collector-4-RUNNABLE
acquireCount for my monitor: 60
yieldpoints taken: 0 (0x0000000000000000)
yieldpoints taken fully: 0 (0x0000000000000000)
native entered blocked: 0 (0x0000000000000000)
JNI entered blocked: 0 (0x0000000000000000)
(stack trace will follow if thread is not lost...)
5-daemon-system-collector-4-RUNNABLE
acquireCount for my monitor: 60
yieldpoints taken: 0 (0x0000000000000000)
yieldpoints taken fully: 0 (0x0000000000000000)
native entered blocked: 0 (0x0000000000000000)
JNI entered blocked: 0 (0x0000000000000000)
(stack trace will follow if thread is not lost...)
6-daemon-system-collector-4-RUNNABLE
acquireCount for my monitor: 60
yieldpoints taken: 0 (0x0000000000000000)
yieldpoints taken fully: 0 (0x0000000000000000)
native entered blocked: 0 (0x0000000000000000)
JNI entered blocked: 0 (0x0000000000000000)
(stack trace will follow if thread is not lost...)
7-daemon-system-collector-4-RUNNABLE
acquireCount for my monitor: 66
yieldpoints taken: 0 (0x0000000000000000)
yieldpoints taken fully: 0 (0x0000000000000000)
native entered blocked: 0 (0x0000000000000000)
JNI entered blocked: 0 (0x0000000000000000)
(stack trace will follow if thread is not lost...)
8-daemon-system-collector-4-RUNNABLE
acquireCount for my monitor: 62
yieldpoints taken: 0 (0x0000000000000000)
yieldpoints taken fully: 0 (0x0000000000000000)
native entered blocked: 0 (0x0000000000000000)
JNI entered blocked: 0 (0x0000000000000000)
(stack trace will follow if thread is not lost...)
9-daemon-system-collector-4-RUNNABLE
acquireCount for my monitor: 62
yieldpoints taken: 0 (0x0000000000000000)
yieldpoints taken fully: 0 (0x0000000000000000)
native entered blocked: 0 (0x0000000000000000)
JNI entered blocked: 0 (0x0000000000000000)
(stack trace will follow if thread is not lost...)
10-daemon-system-collector-4-RUNNABLE
acquireCount for my monitor: 60
yieldpoints taken: 0 (0x0000000000000000)
yieldpoints taken fully: 0 (0x0000000000000000)
native entered blocked: 0 (0x0000000000000000)
JNI entered blocked: 0 (0x0000000000000000)
(stack trace will follow if thread is not lost...)
11-daemon-system-collector-4-RUNNABLE
acquireCount for my monitor: 60
yieldpoints taken: 0 (0x0000000000000000)
yieldpoints taken fully: 0 (0x0000000000000000)
native entered blocked: 0 (0x0000000000000000)
JNI entered blocked: 0 (0x0000000000000000)
(stack trace will follow if thread is not lost...)
12-daemon-system-collector-4-RUNNABLE
acquireCount for my monitor: 60
yieldpoints taken: 0 (0x0000000000000000)
yieldpoints taken fully: 0 (0x0000000000000000)
native entered blocked: 0 (0x0000000000000000)
JNI entered blocked: 0 (0x0000000000000000)
(stack trace will follow if thread is not lost...)
13-daemon-system-5-WAITING
acquireCount for my monitor: 660
yieldpoints taken: 95 (0x000000000000005f)
yieldpoints taken fully: 64 (0x0000000000000040)
native entered blocked: 0 (0x0000000000000000)
JNI entered blocked: 0 (0x0000000000000000)
– Stack –
(0x620bbf60 18483) at [0x620bbf60, 0x556d0adc] Lorg/jikesrvm/scheduler/RVMThread; waitImpl(Ljava/lang/Object;ZJ)V at line 3201
(0x620bbfa0 11097) at [0x620bbfa0, 0x555a475c] Lorg/jikesrvm/scheduler/RVMThread; wait(Ljava/lang/ObjectV at line 3253
at [0x620bbfa0, 0x555a475c] Ljava/lang/Object; wait()V at line 66
at [0x620bbfa0, 0x555a475c] Lorg/jikesrvm/adaptive/util/BlockingPriorityQueue; deleteMin()Ljava/lang/Object; at line 82
(0x620bbfb8 7360) at [0x620bbfb8, 0x55d77080] Lorg/jikesrvm/adaptive/controller/ControllerThread; run()V at line 161
(0x620bbfe0 18557) at [0x620bbfe0, 0x55d76f28] Lorg/jikesrvm/scheduler/RVMThread; startoff()V at line 2606
14-daemon-system-5-RUNNABLE
acquireCount for my monitor: 441
yieldpoints taken: 30 (0x000000000000001e)
yieldpoints taken fully: 30 (0x000000000000001e)
native entered blocked: 0 (0x0000000000000000)
JNI entered blocked: 0 (0x0000000000000000)
– Stack –
(0x62163f90 2608) at [0x62163f90, 0x55598e5c] Lorg/jikesrvm/scheduler/Latch; waitAndCloseWithHandshake()V at line 90
(0x62163fa0 7209) at [0x62163fa0, 0x55598f20] Lorg/jikesrvm/adaptive/measurements/organizers/Organizer; passivate()V at line 92
(0x62163fb0 7207) at [0x62163fb0, 0x55d77080] Lorg/jikesrvm/adaptive/measurements/organizers/Organizer; run()V at line 53
(0x62163fe0 18557) at [0x62163fe0, 0x55d76f28] Lorg/jikesrvm/scheduler/RVMThread; startoff()V at line 2606
15-daemon-system-5-RUNNABLE
acquireCount for my monitor: 265
yieldpoints taken: 0 (0x0000000000000000)
yieldpoints taken fully: 0 (0x0000000000000000)
native entered blocked: 0 (0x0000000000000000)
JNI entered blocked: 0 (0x0000000000000000)
– Stack –
(0x620cef90 2608) at [0x620cef90, 0x55598e5c] Lorg/jikesrvm/scheduler/Latch; waitAndCloseWithHandshake()V at line 90
(0x620cefa0 7209) at [0x620cefa0, 0x55598f20] Lorg/jikesrvm/adaptive/measurements/organizers/Organizer; passivate()V at line 92
(0x620cefb0 7207) at [0x620cefb0, 0x55d77080] Lorg/jikesrvm/adaptive/measurements/organizers/Organizer; run()V at line 53
(0x620cefe0 18557) at [0x620cefe0, 0x55d76f28] Lorg/jikesrvm/scheduler/RVMThread; startoff()V at line 2606
16-daemon-system-5-RUNNABLE
acquireCount for my monitor: 1896
yieldpoints taken: 513 (0x0000000000000201)
yieldpoints taken fully: 513 (0x0000000000000201)
native entered blocked: 0 (0x0000000000000000)
JNI entered blocked: 0 (0x0000000000000000)
– Stack –
(0x620d6f90 2608) at [0x620d6f90, 0x55598e5c] Lorg/jikesrvm/scheduler/Latch; waitAndCloseWithHandshake()V at line 90
(0x620d6fa0 7209) at [0x620d6fa0, 0x55598f20] Lorg/jikesrvm/adaptive/measurements/organizers/Organizer; passivate()V at line 92
(0x620d6fb0 7207) at [0x620d6fb0, 0x55d77080] Lorg/jikesrvm/adaptive/measurements/organizers/Organizer; run()V at line 53
(0x620d6fe0 18557) at [0x620d6fe0, 0x55d76f28] Lorg/jikesrvm/scheduler/RVMThread; startoff()V at line 2606
17-daemon-system-5-RUNNABLE
acquireCount for my monitor: 462
yieldpoints taken: 38 (0x0000000000000026)
yieldpoints taken fully: 37 (0x0000000000000025)
native entered blocked: 0 (0x0000000000000000)
JNI entered blocked: 0 (0x0000000000000000)
– Stack –
(0x620defc8 17203) at [0x620defc8, 0x55d77080] Lorg/jikesrvm/adaptive/OSROrganizerThread; run()V at line 43
(0x620defe0 18557) at [0x620defe0, 0x55d76f28] Lorg/jikesrvm/scheduler/RVMThread; startoff()V at line 2606
18-daemon-system-5-WAITING
acquireCount for my monitor: 7345
yieldpoints taken: 2367 (0x000000000000093f)
yieldpoints taken fully: 2333 (0x000000000000091d)
native entered blocked: 0 (0x0000000000000000)
JNI entered blocked: 0 (0x0000000000000000)
– Stack –
(0x6229df78 18483) at [0x6229df78, 0x556d0adc] Lorg/jikesrvm/scheduler/RVMThread; waitImpl(Ljava/lang/Object;ZJ)V at line 3201
(0x6229dfb8 11097) at [0x6229dfb8, 0x55598d04] Lorg/jikesrvm/scheduler/RVMThread; wait(Ljava/lang/ObjectV at line 3253
at [0x6229dfb8, 0x55598d04] Ljava/lang/Object; wait()V at line 66
at [0x6229dfb8, 0x55598d04] Lorg/jikesrvm/adaptive/util/BlockingPriorityQueue; deleteMin()Ljava/lang/Object; at line 82
(0x6229dfd0 7708) at [0x6229dfd0, 0x55d77080] Lorg/jikesrvm/adaptive/recompilation/CompilationThread; run()V at line 50
(0x6229dfe0 18557) at [0x6229dfe0, 0x55d76f28] Lorg/jikesrvm/scheduler/RVMThread; startoff()V at line 2606
1-daemon-5-WAITING
acquireCount for my monitor: 8742
yieldpoints taken: 72 (0x0000000000000048)
yieldpoints taken fully: 46 (0x000000000000002e)
native entered blocked: 0 (0x0000000000000000)
JNI entered blocked: 0 (0x0000000000000000)
– Stack –
(0x64144f18 18483) at [0x64144f18, 0x55da806c] Lorg/jikesrvm/scheduler/RVMThread; waitImpl(Ljava/lang/Object;ZJ)V at line 3201
(0x64144f58 10) at [0x64144f58, 0x61939080] Lorg/jikesrvm/scheduler/RVMThread; wait(Ljava/lang/ObjectV at line 3253
at [0x64144f58, 0x61939080] Ljava/lang/Object; wait()V at line 66
(0x64144f68 20221) at [0x64144f68, 0x6193726c] Lorg/eclipse/osgi/framework/eventmgr/EventManager$EventThread; getNextEvent()Lorg/eclipse/osgi/framework/eventmgr/EventManager$EventThread$Queued; at line 349
(0x64144f90 20218) at [0x64144f90, 0x5597eb58] Lorg/eclipse/osgi/framework/eventmgr/EventManager$EventThread; run()V at line 287
(0x64144fc0 18470) at [0x64144fc0, 0x55d77098] Lorg/jikesrvm/scheduler/RVMThread; run()V at line 2561
(0x64144fe0 18557) at [0x64144fe0, 0x55d76f28] Lorg/jikesrvm/scheduler/RVMThread; startoff()V at line 2608
20-daemon-2-RUNNABLE
acquireCount for my monitor: 95153
yieldpoints taken: 31625 (0x0000000000007b89)
yieldpoints taken fully: 31613 (0x0000000000007b7d)
native entered blocked: 0 (0x0000000000000000)
JNI entered blocked: 0 (0x0000000000000000)
– Stack –
(0x642309f8 18576) at [0x642309f8, 0x550248b0] Lorg/jikesrvm/scheduler/RVMThread; softHandshake(Lorg/jikesrvm/scheduler/RVMThread$SoftHandshakeVisitorV at line 3562
(0x64230a20 3109) at [0x64230a20, 0x55745828] Lorg/jikesrvm/compilers/opt/runtimesupport/OptCompiledMethod; applyCodePatches(Lorg/jikesrvm/compilers/common/CompiledMethodV at line 537
(0x64230a60 13355) at [0x64230a60, 0x557475d4] Lorg/jikesrvm/compilers/opt/inlining/ClassLoadingDependencyManager; invalidate(Lorg/jikesrvm/compilers/common/CompiledMethodV at line 180
(0x64230a98 13353) at [0x64230a98, 0x55747ffc] Lorg/jikesrvm/compilers/opt/inlining/ClassLoadingDependencyManager; processOverride(Lorg/jikesrvm/classloader/RVMMethodV at line 137
(0x64230ac8 13352) at [0x64230ac8, 0x55744274] Lorg/jikesrvm/compilers/opt/inlining/ClassLoadingDependencyManager; handleOverriddenMethods(Lorg/jikesrvm/classloader/RVMClassV at line 115
(0x64230b00 13349) at [0x64230b00, 0x555c46ec] Lorg/jikesrvm/compilers/opt/inlining/ClassLoadingDependencyManager; classInitialized(Lorg/jikesrvm/classloader/RVMClass;Z)V at line 59
(0x64230b30 8742) at [0x64230b30, 0x555c67bc] Lorg/jikesrvm/classloader/RVMClass; initialize()V at line 1578
(0x64230b68 8742) at [0x64230b68, 0x55d868bc] Lorg/jikesrvm/classloader/RVMClass; initialize()V at line 1528
(0x64230ba0 11354) at [0x64230ba0, 0x55d7c284] Lorg/jikesrvm/runtime/RuntimeEntrypoints; initializeClassForDynamicLink(Lorg/jikesrvm/classloader/RVMClassV at line 610
(0x64230bc8 10061) at [0x64230bc8, 0x55d7c394] Lorg/jikesrvm/classloader/TableBasedDynamicLinker; resolveMember(Lorg/jikesrvm/classloader/MemberReferenceI at line 76
(0x64230be0 10060) at [0x64230be0, 0x61938934] Lorg/jikesrvm/classloader/TableBasedDynamicLinker; resolveMember(I)I at line 65
(0x64230bf0 21295) at [0x64230bf0, 0x6193fc88] Lorg/eclipse/core/internal/runtime/PlatformURLPluginConnection; startup()V at line 65
(0x64230c08 21292) at [0x64230c08, 0x619c4268] Lorg/eclipse/core/internal/runtime/PlatformActivator; installPlatformURLSupport()V at line 71
(0x64230c40 20555) at [0x64230c40, 0x618bc380] Lorg/eclipse/core/internal/runtime/PlatformActivator; start(Lorg/osgi/framework/BundleContextV at line 61
(0x64230c68 19806) at [0x64230c68, 0x55a5ee8c] Lorg/eclipse/osgi/framework/internal/core/BundleContextImpl$2; run()Ljava/lang/Object; at line 994
(0x64230c90 7386) at [0x64230c90, 0x618dd95c] Ljava/security/AccessController; doPrivileged(Ljava/security/PrivilegedExceptionActionLjava/lang/Object; at line 154
(0x64230ca8 19804) at [0x64230ca8, 0x618d132c] Lorg/eclipse/osgi/framework/internal/core/BundleContextImpl; startActivator(Lorg/osgi/framework/BundleActivatorV at line 988
(0x64230d10 19799) at [0x64230d10, 0x61860570] Lorg/eclipse/osgi/framework/internal/core/BundleContextImpl; start()V at line 969
(0x64230d38 20434) at [0x64230d38, 0x619a0130] Lorg/eclipse/osgi/framework/internal/core/BundleHost; startWorker(Z)V at line 316
(0x64230da0 20453) at [0x64230da0, 0x61984110] Lorg/eclipse/osgi/framework/internal/core/AbstractBundle; resume()V at line 337
(0x64230dd0 20426) at [0x64230dd0, 0x618dd6e4] Lorg/eclipse/osgi/framework/internal/core/Framework; resumeBundle(Lorg/eclipse/osgi/framework/internal/core/AbstractBundleV at line 1024
(0x64230e08 19798) at [0x64230e08, 0x618c2b6c] Lorg/eclipse/osgi/framework/internal/core/StartLevelManager; resumeBundles([Lorg/eclipse/osgi/framework/internal/core/AbstractBundle;Z)V at line 574
(0x64230e58 19791) at [0x64230e58, 0x618be840] Lorg/eclipse/osgi/framework/internal/core/StartLevelManager; incFWSL(ILorg/eclipse/osgi/framework/internal/core/AbstractBundleV at line 496
(0x64230ea0 19790) at [0x64230ea0, 0x619553e0] Lorg/eclipse/osgi/framework/internal/core/StartLevelManager; doSetStartLevel(ILorg/eclipse/osgi/framework/internal/core/AbstractBundleV at line 275
(0x64230ef0 20363) at [0x64230ef0, 0x618ee694] Lorg/eclipse/osgi/framework/internal/core/StartLevelManager; dispatchEvent(Ljava/lang/Object;Ljava/lang/Object;ILjava/lang/ObjectV at line 456
(0x64230f38 19870) at [0x64230f38, 0x61937410] Lorg/eclipse/osgi/framework/eventmgr/EventManager; dispatchEvent([Lorg/eclipse/osgi/framework/eventmgr/EventListeners$ListElement;Lorg/eclipse/osgi/framework/eventmgr/EventDispatcher;ILjava/lang/ObjectV at line 189
(0x64230f90 20218) at [0x64230f90, 0x5597eb58] Lorg/eclipse/osgi/framework/eventmgr/EventManager$EventThread; run()V at line 291
(0x64230fc0 18470) at [0x64230fc0, 0x55d77098] Lorg/jikesrvm/scheduler/RVMThread; run()V at line 2561
(0x64230fe0 18557) at [0x64230fe0, 0x55d76f28] Lorg/jikesrvm/scheduler/RVMThread; startoff()V at line 2608

Environment

ppc32-linux, development config, Linux rple 3.8.0-0-powerpc-e500mc #2-Ubuntu SMP Sun Jan 13 03:54:50 UTC 2013 ppc ppc ppc GNU/Linux, Jikes RVM revision fb5276512eae (+ build system changes needed for that machine)

Status

Assignee

DaveG

Reporter

Erik Brangs

Labels

None

External issue ID

None

Fix versions

Affects versions

3.1.3

Priority

Medium