-
Bug
-
Resolution: Fixed
-
P2
-
7
I am launching a test which creates a frame using different GCs available and pushes the frame into fullscreen mode. This is repeated for all GDs as well. When I run this on SuSE10 having Nvidia Geforce FX5900 with the latest Nvidia Driver - 9746, the test hangs immediately after the launch (after bringing up the first fullscreen frame). I pressed CTRL + '\' and the thread dump showed that there is a java level deadlock. I have given the thread dump below.
This is not reproducible on JDK7-b07 but reproducible on JDK7-b08. I tried on another SuSE10 machine with ATI Radeon 9600 and it was throwing a NPE (6529869). Not reproducible on Win32.
I have attached a sample test. Launch the sample test on the above config and you would notice that the test hangs immediately after the launch.
Here is the thread-dump:
------------------------
Full thread dump Java HotSpot(TM) Client VM (1.7.0-ea-b08 mixed mode):
"AWT-Shutdown" prio=10 tid=0x4a6f9000 nid=0x1a38 in Object.wait() [0x4adca000..0x4adcafc0]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x42354a60> (a java.lang.Object)
at java.lang.Object.wait(Object.java:485)
at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:263)
- locked <0x42354a60> (a java.lang.Object)
at java.lang.Thread.run(Thread.java:619)
"AWT-XAWT" daemon prio=10 tid=0x4a6dd400 nid=0x1a37 waiting for monitor entry [0x4ad79000..0x4ad79f40]
java.lang.Thread.State: BLOCKED (on object monitor)
at sun.awt.X11GraphicsDevice.getProxyKeyFor(X11GraphicsDevice.java:70)
- waiting to lock <0x423f19f8> (a sun.awt.X11GraphicsDevice)
at sun.awt.X11GraphicsConfig.getProxyKey(X11GraphicsConfig.java:166)
at sun.java2d.x11.X11SurfaceData.<init>(X11SurfaceData.java:404)
at sun.java2d.x11.X11SurfaceData$X11WindowSurfaceData.<init>(X11SurfaceData.java:665)
at sun.java2d.x11.X11SurfaceData.createData(X11SurfaceData.java:370)
at sun.awt.X11GraphicsConfig.createSurfaceData(X11GraphicsConfig.java:339)
at sun.awt.X11.XWindow.validateSurface(XWindow.java:1110)
at sun.awt.X11.XWindow.reshape(XWindow.java:1062)
at sun.awt.X11.XWindow.reshape(XWindow.java:1043)
at sun.awt.X11.XContentWindow.setContentBounds(XContentWindow.java:84)
at sun.awt.X11.XDecoratedPeer.reconfigureContentWindow(XDecoratedPeer.java:585)
at sun.awt.X11.XDecoratedPeer.handleConfigureNotifyEvent(XDecoratedPeer.java:710)
at sun.awt.X11.XBaseWindow.dispatchEvent(XBaseWindow.java:1081)
at sun.awt.X11.XBaseWindow.dispatchToWindow(XBaseWindow.java:1038)
at sun.awt.X11.XToolkit.dispatchEvent(XToolkit.java:471)
at sun.awt.X11.XToolkit.run(XToolkit.java:584)
at sun.awt.X11.XToolkit.run(XToolkit.java:519)
at java.lang.Thread.run(Thread.java:619)
"Java2D Disposer" daemon prio=10 tid=0x08230000 nid=0x1a36 in Object.wait() [0x4acf9000..0x4acfa0c0]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x423f0478> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
- locked <0x423f0478> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
at sun.java2d.Disposer.run(Disposer.java:125)
at java.lang.Thread.run(Thread.java:619)
"Low Memory Detector" daemon prio=10 tid=0x4a612400 nid=0x1a34 runnable [0x00000000..0x00000000]
java.lang.Thread.State: RUNNABLE
"CompilerThread0" daemon prio=10 tid=0x4a610c00 nid=0x1a33 waiting on condition [0x00000000..0x4a854be8]
java.lang.Thread.State: RUNNABLE
"Signal Dispatcher" daemon prio=10 tid=0x4a60f800 nid=0x1a32 waiting on condition [0x00000000..0x00000000]
java.lang.Thread.State: RUNNABLE
"Finalizer" daemon prio=10 tid=0x4a600800 nid=0x1a31 in Object.wait() [0x4a74f000..0x4a74fe40]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x423f0660> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
- locked <0x423f0660> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)
"Reference Handler" daemon prio=10 tid=0x080a6c00 nid=0x1a30 in Object.wait() [0x4a5fb000..0x4a5fbfc0]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x423f06f0> (a java.lang.ref.Reference$Lock)
at java.lang.Object.wait(Object.java:485)
at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
- locked <0x423f06f0> (a java.lang.ref.Reference$Lock)
"main" prio=10 tid=0x08057c00 nid=0x1a2e waiting on condition [0x401f2000..0x401f3298]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x427e8a40> (a java.util.concurrent.locks.ReentrantLock$NonfairSync)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:745)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:778)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1108)
at java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:186)
at java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:262) at sun.awt.SunToolkit.awtLock(SunToolkit.java:249)
at sun.awt.X11.XAwtState.getComponentMouseEntered(XAwtState.java:43)
at sun.awt.X11.XGlobalCursorManager.findHeavyweightUnderCursor(XGlobalCursorManager.java:135)
at sun.awt.X11.XGlobalCursorManager.findHeavyweightUnderCursor(XGlobalCursorManager.java:151)
at sun.awt.GlobalCursorManager._updateCursor(GlobalCursorManager.java:166)
at sun.awt.GlobalCursorManager.updateCursorImmediately(GlobalCursorManager.java:82)
at sun.awt.X11.XComponentPeer.updateCursorImmediately(XComponentPeer.java:821)
at java.awt.Component.updateCursorImmediately(Component.java:2758)
at java.awt.Component.show(Component.java:1389)
- locked <0x423f6d70> (a java.awt.Component$AWTTreeLock)
at java.awt.Window.show(Window.java:846)
at java.awt.Component.show(Component.java:1414)
at java.awt.Component.setVisible(Component.java:1367)
at java.awt.Window.setVisible(Window.java:818)
at java.awt.GraphicsDevice.setFullScreenWindow(GraphicsDevice.java:242)
at sun.awt.X11GraphicsDevice.setFullScreenWindow(X11GraphicsDevice.java:314)
- locked <0x423f19f8> (a sun.awt.X11GraphicsDevice)
at FullScreenTest.fullScreenSameDevice(FullScreenTest.java:81)
at FullScreenTest.<init>(FullScreenTest.java:44)
at FullScreenTest.main(FullScreenTest.java:93)
"VM Thread" prio=10 tid=0x080a3c00 nid=0x1a2f runnable
"VM Periodic Task Thread" prio=10 tid=0x4a613c00 nid=0x1a35 waiting on condition
JNI global references: 792
Found one Java-level deadlock:
=============================
"AWT-XAWT":
waiting to lock monitor 0x080a7fe4 (object 0x423f19f8, a sun.awt.X11GraphicsDevice),
which is held by "main"
"main":
waiting for ownable synchronizer 0x427e8a40, (a java.util.concurrent.locks.ReentrantLock$NonfairSync),
which is held by "AWT-XAWT"
Java stack information for the threads listed above:
===================================================
"AWT-XAWT":
at sun.awt.X11GraphicsDevice.getProxyKeyFor(X11GraphicsDevice.java:70)
- waiting to lock <0x423f19f8> (a sun.awt.X11GraphicsDevice)
at sun.awt.X11GraphicsConfig.getProxyKey(X11GraphicsConfig.java:166)
at sun.java2d.x11.X11SurfaceData.<init>(X11SurfaceData.java:404)
at sun.java2d.x11.X11SurfaceData$X11WindowSurfaceData.<init>(X11SurfaceData.java:665)
at sun.java2d.x11.X11SurfaceData.createData(X11SurfaceData.java:370)
at sun.awt.X11GraphicsConfig.createSurfaceData(X11GraphicsConfig.java:339)
at sun.awt.X11.XWindow.validateSurface(XWindow.java:1110)
at sun.awt.X11.XWindow.reshape(XWindow.java:1062)
at sun.awt.X11.XWindow.reshape(XWindow.java:1043)
at sun.awt.X11.XContentWindow.setContentBounds(XContentWindow.java:84)
at sun.awt.X11.XDecoratedPeer.reconfigureContentWindow(XDecoratedPeer.java:585)
at sun.awt.X11.XDecoratedPeer.handleConfigureNotifyEvent(XDecoratedPeer.java:710)
at sun.awt.X11.XBaseWindow.dispatchEvent(XBaseWindow.java:1081)
at sun.awt.X11.XBaseWindow.dispatchToWindow(XBaseWindow.java:1038)
at sun.awt.X11.XToolkit.dispatchEvent(XToolkit.java:471)
at sun.awt.X11.XToolkit.run(XToolkit.java:584)
at sun.awt.X11.XToolkit.run(XToolkit.java:519)
at java.lang.Thread.run(Thread.java:619)
"main":
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x427e8a40> (a java.util.concurrent.locks.ReentrantLock$NonfairSync)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:745)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:778)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1108)
at java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:186)
at java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:262) at sun.awt.SunToolkit.awtLock(SunToolkit.java:249)
at sun.awt.X11.XAwtState.getComponentMouseEntered(XAwtState.java:43)
at sun.awt.X11.XGlobalCursorManager.findHeavyweightUnderCursor(XGlobalCursorManager.java:135)
at sun.awt.X11.XGlobalCursorManager.findHeavyweightUnderCursor(XGlobalCursorManager.java:151)
at sun.awt.GlobalCursorManager._updateCursor(GlobalCursorManager.java:166)
at sun.awt.GlobalCursorManager.updateCursorImmediately(GlobalCursorManager.java:82)
at sun.awt.X11.XComponentPeer.updateCursorImmediately(XComponentPeer.java:821)
at java.awt.Component.updateCursorImmediately(Component.java:2758)
at java.awt.Component.show(Component.java:1389)
- locked <0x423f6d70> (a java.awt.Component$AWTTreeLock)
at java.awt.Window.show(Window.java:846)
at java.awt.Component.show(Component.java:1414)
at java.awt.Component.setVisible(Component.java:1367)
at java.awt.Window.setVisible(Window.java:818)
at java.awt.GraphicsDevice.setFullScreenWindow(GraphicsDevice.java:242)
at sun.awt.X11GraphicsDevice.setFullScreenWindow(X11GraphicsDevice.java:314)
- locked <0x423f19f8> (a sun.awt.X11GraphicsDevice)
at FullScreenTest.fullScreenSameDevice(FullScreenTest.java:81)
at FullScreenTest.<init>(FullScreenTest.java:44)
at FullScreenTest.main(FullScreenTest.java:93)
Found 1 deadlock.
Heap
def new generation total 960K, used 430K [0x42300000, 0x42400000, 0x427e0000) eden space 896K, 40% used [0x42300000, 0x4235b968, 0x423e0000)
from space 64K, 100% used [0x423f0000, 0x42400000, 0x42400000)
to space 64K, 0% used [0x423e0000, 0x423e0000, 0x423f0000)
tenured generation total 4096K, used 308K [0x427e0000, 0x42be0000, 0x46300000)
the space 4096K, 7% used [0x427e0000, 0x4282d278, 0x4282d400, 0x42be0000)
compacting perm gen total 12288K, used 6227K [0x46300000, 0x46f00000, 0x4a300000)
the space 12288K, 50% used [0x46300000, 0x46914ff8, 0x46915000, 0x46f00000)
No shared spaces configured.
This is not reproducible on JDK7-b07 but reproducible on JDK7-b08. I tried on another SuSE10 machine with ATI Radeon 9600 and it was throwing a NPE (6529869). Not reproducible on Win32.
I have attached a sample test. Launch the sample test on the above config and you would notice that the test hangs immediately after the launch.
Here is the thread-dump:
------------------------
Full thread dump Java HotSpot(TM) Client VM (1.7.0-ea-b08 mixed mode):
"AWT-Shutdown" prio=10 tid=0x4a6f9000 nid=0x1a38 in Object.wait() [0x4adca000..0x4adcafc0]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x42354a60> (a java.lang.Object)
at java.lang.Object.wait(Object.java:485)
at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:263)
- locked <0x42354a60> (a java.lang.Object)
at java.lang.Thread.run(Thread.java:619)
"AWT-XAWT" daemon prio=10 tid=0x4a6dd400 nid=0x1a37 waiting for monitor entry [0x4ad79000..0x4ad79f40]
java.lang.Thread.State: BLOCKED (on object monitor)
at sun.awt.X11GraphicsDevice.getProxyKeyFor(X11GraphicsDevice.java:70)
- waiting to lock <0x423f19f8> (a sun.awt.X11GraphicsDevice)
at sun.awt.X11GraphicsConfig.getProxyKey(X11GraphicsConfig.java:166)
at sun.java2d.x11.X11SurfaceData.<init>(X11SurfaceData.java:404)
at sun.java2d.x11.X11SurfaceData$X11WindowSurfaceData.<init>(X11SurfaceData.java:665)
at sun.java2d.x11.X11SurfaceData.createData(X11SurfaceData.java:370)
at sun.awt.X11GraphicsConfig.createSurfaceData(X11GraphicsConfig.java:339)
at sun.awt.X11.XWindow.validateSurface(XWindow.java:1110)
at sun.awt.X11.XWindow.reshape(XWindow.java:1062)
at sun.awt.X11.XWindow.reshape(XWindow.java:1043)
at sun.awt.X11.XContentWindow.setContentBounds(XContentWindow.java:84)
at sun.awt.X11.XDecoratedPeer.reconfigureContentWindow(XDecoratedPeer.java:585)
at sun.awt.X11.XDecoratedPeer.handleConfigureNotifyEvent(XDecoratedPeer.java:710)
at sun.awt.X11.XBaseWindow.dispatchEvent(XBaseWindow.java:1081)
at sun.awt.X11.XBaseWindow.dispatchToWindow(XBaseWindow.java:1038)
at sun.awt.X11.XToolkit.dispatchEvent(XToolkit.java:471)
at sun.awt.X11.XToolkit.run(XToolkit.java:584)
at sun.awt.X11.XToolkit.run(XToolkit.java:519)
at java.lang.Thread.run(Thread.java:619)
"Java2D Disposer" daemon prio=10 tid=0x08230000 nid=0x1a36 in Object.wait() [0x4acf9000..0x4acfa0c0]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x423f0478> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
- locked <0x423f0478> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
at sun.java2d.Disposer.run(Disposer.java:125)
at java.lang.Thread.run(Thread.java:619)
"Low Memory Detector" daemon prio=10 tid=0x4a612400 nid=0x1a34 runnable [0x00000000..0x00000000]
java.lang.Thread.State: RUNNABLE
"CompilerThread0" daemon prio=10 tid=0x4a610c00 nid=0x1a33 waiting on condition [0x00000000..0x4a854be8]
java.lang.Thread.State: RUNNABLE
"Signal Dispatcher" daemon prio=10 tid=0x4a60f800 nid=0x1a32 waiting on condition [0x00000000..0x00000000]
java.lang.Thread.State: RUNNABLE
"Finalizer" daemon prio=10 tid=0x4a600800 nid=0x1a31 in Object.wait() [0x4a74f000..0x4a74fe40]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x423f0660> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
- locked <0x423f0660> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)
"Reference Handler" daemon prio=10 tid=0x080a6c00 nid=0x1a30 in Object.wait() [0x4a5fb000..0x4a5fbfc0]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x423f06f0> (a java.lang.ref.Reference$Lock)
at java.lang.Object.wait(Object.java:485)
at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
- locked <0x423f06f0> (a java.lang.ref.Reference$Lock)
"main" prio=10 tid=0x08057c00 nid=0x1a2e waiting on condition [0x401f2000..0x401f3298]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x427e8a40> (a java.util.concurrent.locks.ReentrantLock$NonfairSync)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:745)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:778)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1108)
at java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:186)
at java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:262) at sun.awt.SunToolkit.awtLock(SunToolkit.java:249)
at sun.awt.X11.XAwtState.getComponentMouseEntered(XAwtState.java:43)
at sun.awt.X11.XGlobalCursorManager.findHeavyweightUnderCursor(XGlobalCursorManager.java:135)
at sun.awt.X11.XGlobalCursorManager.findHeavyweightUnderCursor(XGlobalCursorManager.java:151)
at sun.awt.GlobalCursorManager._updateCursor(GlobalCursorManager.java:166)
at sun.awt.GlobalCursorManager.updateCursorImmediately(GlobalCursorManager.java:82)
at sun.awt.X11.XComponentPeer.updateCursorImmediately(XComponentPeer.java:821)
at java.awt.Component.updateCursorImmediately(Component.java:2758)
at java.awt.Component.show(Component.java:1389)
- locked <0x423f6d70> (a java.awt.Component$AWTTreeLock)
at java.awt.Window.show(Window.java:846)
at java.awt.Component.show(Component.java:1414)
at java.awt.Component.setVisible(Component.java:1367)
at java.awt.Window.setVisible(Window.java:818)
at java.awt.GraphicsDevice.setFullScreenWindow(GraphicsDevice.java:242)
at sun.awt.X11GraphicsDevice.setFullScreenWindow(X11GraphicsDevice.java:314)
- locked <0x423f19f8> (a sun.awt.X11GraphicsDevice)
at FullScreenTest.fullScreenSameDevice(FullScreenTest.java:81)
at FullScreenTest.<init>(FullScreenTest.java:44)
at FullScreenTest.main(FullScreenTest.java:93)
"VM Thread" prio=10 tid=0x080a3c00 nid=0x1a2f runnable
"VM Periodic Task Thread" prio=10 tid=0x4a613c00 nid=0x1a35 waiting on condition
JNI global references: 792
Found one Java-level deadlock:
=============================
"AWT-XAWT":
waiting to lock monitor 0x080a7fe4 (object 0x423f19f8, a sun.awt.X11GraphicsDevice),
which is held by "main"
"main":
waiting for ownable synchronizer 0x427e8a40, (a java.util.concurrent.locks.ReentrantLock$NonfairSync),
which is held by "AWT-XAWT"
Java stack information for the threads listed above:
===================================================
"AWT-XAWT":
at sun.awt.X11GraphicsDevice.getProxyKeyFor(X11GraphicsDevice.java:70)
- waiting to lock <0x423f19f8> (a sun.awt.X11GraphicsDevice)
at sun.awt.X11GraphicsConfig.getProxyKey(X11GraphicsConfig.java:166)
at sun.java2d.x11.X11SurfaceData.<init>(X11SurfaceData.java:404)
at sun.java2d.x11.X11SurfaceData$X11WindowSurfaceData.<init>(X11SurfaceData.java:665)
at sun.java2d.x11.X11SurfaceData.createData(X11SurfaceData.java:370)
at sun.awt.X11GraphicsConfig.createSurfaceData(X11GraphicsConfig.java:339)
at sun.awt.X11.XWindow.validateSurface(XWindow.java:1110)
at sun.awt.X11.XWindow.reshape(XWindow.java:1062)
at sun.awt.X11.XWindow.reshape(XWindow.java:1043)
at sun.awt.X11.XContentWindow.setContentBounds(XContentWindow.java:84)
at sun.awt.X11.XDecoratedPeer.reconfigureContentWindow(XDecoratedPeer.java:585)
at sun.awt.X11.XDecoratedPeer.handleConfigureNotifyEvent(XDecoratedPeer.java:710)
at sun.awt.X11.XBaseWindow.dispatchEvent(XBaseWindow.java:1081)
at sun.awt.X11.XBaseWindow.dispatchToWindow(XBaseWindow.java:1038)
at sun.awt.X11.XToolkit.dispatchEvent(XToolkit.java:471)
at sun.awt.X11.XToolkit.run(XToolkit.java:584)
at sun.awt.X11.XToolkit.run(XToolkit.java:519)
at java.lang.Thread.run(Thread.java:619)
"main":
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x427e8a40> (a java.util.concurrent.locks.ReentrantLock$NonfairSync)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:745)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:778)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1108)
at java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:186)
at java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:262) at sun.awt.SunToolkit.awtLock(SunToolkit.java:249)
at sun.awt.X11.XAwtState.getComponentMouseEntered(XAwtState.java:43)
at sun.awt.X11.XGlobalCursorManager.findHeavyweightUnderCursor(XGlobalCursorManager.java:135)
at sun.awt.X11.XGlobalCursorManager.findHeavyweightUnderCursor(XGlobalCursorManager.java:151)
at sun.awt.GlobalCursorManager._updateCursor(GlobalCursorManager.java:166)
at sun.awt.GlobalCursorManager.updateCursorImmediately(GlobalCursorManager.java:82)
at sun.awt.X11.XComponentPeer.updateCursorImmediately(XComponentPeer.java:821)
at java.awt.Component.updateCursorImmediately(Component.java:2758)
at java.awt.Component.show(Component.java:1389)
- locked <0x423f6d70> (a java.awt.Component$AWTTreeLock)
at java.awt.Window.show(Window.java:846)
at java.awt.Component.show(Component.java:1414)
at java.awt.Component.setVisible(Component.java:1367)
at java.awt.Window.setVisible(Window.java:818)
at java.awt.GraphicsDevice.setFullScreenWindow(GraphicsDevice.java:242)
at sun.awt.X11GraphicsDevice.setFullScreenWindow(X11GraphicsDevice.java:314)
- locked <0x423f19f8> (a sun.awt.X11GraphicsDevice)
at FullScreenTest.fullScreenSameDevice(FullScreenTest.java:81)
at FullScreenTest.<init>(FullScreenTest.java:44)
at FullScreenTest.main(FullScreenTest.java:93)
Found 1 deadlock.
Heap
def new generation total 960K, used 430K [0x42300000, 0x42400000, 0x427e0000) eden space 896K, 40% used [0x42300000, 0x4235b968, 0x423e0000)
from space 64K, 100% used [0x423f0000, 0x42400000, 0x42400000)
to space 64K, 0% used [0x423e0000, 0x423e0000, 0x423f0000)
tenured generation total 4096K, used 308K [0x427e0000, 0x42be0000, 0x46300000)
the space 4096K, 7% used [0x427e0000, 0x4282d278, 0x4282d400, 0x42be0000)
compacting perm gen total 12288K, used 6227K [0x46300000, 0x46f00000, 0x4a300000)
the space 12288K, 50% used [0x46300000, 0x46914ff8, 0x46915000, 0x46f00000)
No shared spaces configured.
- duplicates
-
JDK-6542531 Deadlock in X11GraphicsDevice.setFullScreenWindow()
-
- Closed
-
- relates to
-
JDK-6205557 Changes to image data should be tracked at a finer granularity
-
- Closed
-
-
JDK-6756195 Deadlock in X11GraphicsConfig between AWT-EventQueue and AWT-Motif threads
-
- Open
-