-
Bug
-
Resolution: Fixed
-
P2
-
1.1
-
None
-
1.1fcs
-
generic, sparc
-
generic, solaris_2.5
-
Not verified
I'm getting thread deadlocks fairly often with this week's promoted build on
Solaris while running a newly revised version of the BeanBox.
The backtrace always seems to show that the finalizer thread is in
Graphics.finalize and some other thread is in sun.awt.motif.X11Graphics.<init>,
but I don't know if this is a smoking gun, or a coincidence....
Full thread dump:
"Thread-13" (TID:0xee32ad28, sys_thread_t:0xedff1de0, state:MW) prio=5
sun.beanbox.PropertySheet.setCustomizer(PropertySheet.java:184)
sun.beanbox.BeanBoxFrame.setCustomizer(BeanBoxFrame.java:190)
sun.beanbox.BeanBox.getMenuBar(BeanBox.java:81)
sun.beanbox.BeanBoxFrame.doSetCurrentFocus(BeanBoxFrame.java:177)
sun.beanbox.SetFocusThread.run(BeanBoxFrame.java:279)
"Thread-12" (TID:0xee32b7a8, sys_thread_t:0xeddc1de0, state:CW) prio=6
sun.awt.motif.MLabelPeer.getMinimumSize(MLabelPeer.java:52)
sun.awt.motif.MComponentPeer.getPreferredSize(MComponentPeer.java:169)
sun.awt.motif.MComponentPeer.preferredSize(MComponentPeer.java:478)
java.awt.Component.preferredSize(Component.java)
sun.beanbox.PropertySheet.setTarget(PropertySheet.java:120)
sun.beanbox.BeanBoxFrame.doSetCurrentFocus(BeanBoxFrame.java:184)
sun.beanbox.SetFocusThread.run(BeanBoxFrame.java:279)
"Thread-6" (TID:0xee32d428, sys_thread_t:0xef031de0, state:MW) prio=5
sun.awt.motif.X11Graphics.<init>(X11Graphics.java:58)
sun.awt.motif.MComponentPeer.getGraphics(MComponentPeer.java:177)
java.awt.Component.getGraphics(Component.java)
sunw.demo.juggler.Juggler.run(Juggler.java:169)
java.lang.Thread.run(Thread.java)
"Screen Updater" (TID:0xee3235c0, sys_thread_t:0xef0c1de0, state:MW) prio=6
sun.awt.motif.MComponentPeer.updateClient(MComponentPeer.java:131)
sun.awt.ScreenUpdater.run(ScreenUpdater.java:102)
"AWT-Motif" (TID:0xee304248, sys_thread_t:0xef131de0, state:MW) prio=5
java.lang.Thread.run(Thread.java)
"AWT-Input" (TID:0xee304228, sys_thread_t:0xef161de0, state:MW) prio=5
"AWT-EventQueue" (TID:0xee304200, sys_thread_t:0xef191de0, state:MW) prio=5
java.awt.Component.dispatchEvent(Component.java)
java.awt.Container.dispatchEvent(Container.java)
java.awt.EventDispatchThread.run(EventDispatchThread.java)
"Finalizer thread" (TID:0xee300220, sys_thread_t:0xef2c1de0, state:MW) prio=1
java.awt.Graphics.finalize(Graphics.java)
"Async Garbage Collector" (TID:0xee3001d8, sys_thread_t:0xef2f1de0, state:CW) prio=1
"Idle thread" (TID:0xee300190, sys_thread_t:0xef3c1de0, state:R) prio=0 *current thread*
"Clock" (TID:0xee3000d0, sys_thread_t:0xef3f1de0, state:CW) prio=12
"main" (TID:0xee3000a8, sys_thread_t:0x33888, state:CW) prio=5
Monitor Cache Dump:
sun.beanbox.PropertySheet@EE322E50/EE3AE608 (key=0xee322e50): monitor owner eddc1de0: "Thread-12"
Waiting to enter:
"Thread-13"
unknown key (key=0xef2f1de0): unowned
Waiting to be notified:
"Async Garbage Collector"
sun.beanbox.BeanBox@EE3264D8/EE3A43B0 (key=0xee3264d8): monitor owner edff1de0: "Thread-13"
sun.awt.motif.MToolkit@EE3041E0/EE34E400 (key=0xee3041e0): monitor owner eddc1de0: "Thread-12"
Waiting to enter:
"Screen Updater"
"AWT-EventQueue"
"Thread-6"
"AWT-Input"
"AWT-Motif"
"Finalizer thread"
java.lang.Object@EE302FB0/EE34B3D0 (key=0xee302fb0): monitor owner eddc1de0: "Thread-12"
Registered Monitor Dump:
Verifier lock: unowned
Thread queue lock: unowned
Waiting to be notified:
"main"
Name and type hash table lock: unowned
String intern lock: unowned
JNI global reference lock: unowned
BinClass lock: unowned
Class loading lock: unowned
Java stack lock: unowned
Code rewrite lock: unowned
Heap lock: unowned
Has finalization queue lock: unowned
Finalize me queue lock: unowned
Waiting to be notified:
"Thread-12"
Monitor IO lock: unowned
Child death monitor: unowned
Event monitor: unowned
I/O monitor: unowned
Alarm monitor: unowned
Waiting to be notified:
"Clock"
Sbrk lock: unowned
Monitor cache expansion lock: unowned
Monitor registry: monitor owner ef3c1de0: "Idle thread"
Thread Alarm Q:
sys_thread_t 0xef2f1de0 [Timeout in 941 ms]
- duplicates
-
JDK-4026787 Deadlock between AWT-Motif and finalizer under Solaris
- Closed
- relates to
-
JDK-4192666 deadlock involving X11InputMethod.finalize on X11
- Resolved