Name: dd4877 Date: 11/20/2001
daniel.daugherty@sun 2001-11-14
During recent stress testing for my most recent batch of bug fixes, a
MultiBreakpointsTest java_g run hung on Solaris SPARC.
The commandLoop thread is stuck waiting for the reader thread. Other
threads are waiting for the commandLoop thread. The reader thread is
not present.
THREAD t@8
Other threads are waiting for this thread to do a notify on the "JDWP
Event Helper Completion Monitor". This thread is waiting on the "JDWP
Transport Listener Monitor".
However, the reader thread (normally t@9) is not present.
t@8(l@9) stopped in ___lwp_cond_wait at 0xff31b390
0xff31b390: ___lwp_cond_wait+0x0004: ta 0x8
current thread: t@8
[1] ___lwp_cond_wait(0x10d3a8, 0x10d390, 0x0, 0x1, 0xd6ac8, 0x0), at
0xff31b390
[2] _lwp_cond_wait(0x10d3a8, 0x10d390, 0x1c86f8, 0x40, 0x64, 0x0), at
0xff312c00
=>[3] os::Solaris::cond_wait(cv = 0x10d3a8, mx = 0x10d390), line 184 in
"os_solaris.hpp"
[4] os::Solaris::Event::wait(this = 0x10d388), line 312 in "os_solaris.hpp"
[5] os::Solaris::Event::down(this = 0x10d388), line 339 in "os_solaris.hpp"
[6] ObjectMonitor::raw_wait(this = 0x164890, millis = -1LL, interruptible = 1,
__the_thread__ = 0xd6ac8), line 505 in "objectMonitor_solaris.cpp"
[7] RawMonitorWait(_monitor = 0x164888, millis = -1LL), line 3116 in
"jvmdi.cpp"
[8] debugMonitorWait(0x164888, 0xc8310, 0x1c6fb8, 0x0, 0x0, 0xf9981911), at
0xfe579f48
[9] transport_sendPacket(0xf99818fc, 0xf99818e8, 0x1c8700, 0x1, 0xd6ac8, 0x0),
at 0xfe5761f8
[10] outStream_sendCommand(0xf99818e8, 0xf99818e8, 0x1c86f8, 0x40, 0x64, 0x0),
at 0xfe56d39c
[11] handleReportEventCompositeCommand(0xd6b64, 0x1c86e8, 0x10002, 0xf,
0xfffffff8, 0x10cdb8), at 0xfe5661a4
[12] handleCommand(0xd6b64, 0x1c86d8, 0x4, 0xffffffff, 0xfffffff8, 0x10d1e0),
at 0xfe5664bc
[13] commandLoop(0x0, 0xd6ac8, 0x0, 0xffffffff, 0xfffffff8, 0x10d1e0), at
0xfe56688c
[14] DebuggerThread::start_function_wrapper(thread = 0xd6ac8, __the_thread__ =
0xd6ac8), line 2584 in "jvmdi.cpp"
[15] JavaThread::thread_main_inner(this = 0xd6ac8), line 1300 in "thread.cpp"
[16] JavaThread::run(this = 0xd6ac8), line 1284 in "thread.cpp"
[17] _start(data = 0xd6ac8), line 536 in "os_solaris.cpp"
Current function is os::sleep
1675 return os_sleep(millis);
The test log file shows the following unexpected exception:
FAILED: Exception occured in eventHandler: com.sun.jdi.InternalException: Unexpe
cted JDWP Error: 13
com.sun.jdi.InternalException: Unexpected JDWP Error: 13
at com.sun.tools.jdi.JDWPException.toJDIException(JDWPException.java:50)
at com.sun.tools.jdi.VirtualMachineImpl.resume(VirtualMachineImpl.java:4
14)
at com.sun.tools.jdi.EventSetImpl.resume(EventSetImpl.java:583)
at TestScaffold.eventSetComplete(TestScaffold.java:86)
at TestScaffold$EventHandler.run(TestScaffold.java:234)
at java.lang.Thread.run(Thread.java:539)
======================================================================
- duplicates
-
JDK-4529917 SuspendChecker thread deadlock retry loses SuspendThread request
- Resolved