Re: AWT Dev [9] Review request for 8129116: Deadlock with multimonitor fullscreen windows.

2015-06-19 Thread Alexander Scherbatiy


 The fix looks good to me.

  Thanks,
  Alexandr.

On 6/18/2015 5:10 PM, Sergey Bylokhov wrote:

Hi, Alexander.
The fix looks fine to me.

On 18.06.15 16:47, Alexander Zvegintsev wrote:

Hello

please review the fix
http://cr.openjdk.java.net/~azvegint/jdk/9/8129116/00/
for the issue
https://bugs.openjdk.java.net/browse/JDK-8129116

This deadlock occurs when we setting a fullscreen window on each 
graphics device sequentially without a delay.

EventQueue.invokeAndWait(() - {
for (GraphicsDevice device : devices) {
device.setFullScreenWindow(new Frame());
}
});

It happens even for non-exclusive fullscreen mode too (before the 
JDK-8051617[0] fix).


Currently we are dispatching events in XToolkit under the awtLock. 
The fix simply releases this acquired awtLock to avoid deadlock.
However we have a couple of issues ([1], [2]) with similar fixes. 
This repetitive pattern doesn't look good to me,
so I created JDK-8129119 [3] to consider releasing awtLock upon 
dispatchEvent call in XToolkit.


[0] https://bugs.openjdk.java.net/browse/JDK-8051617 Fullscreen mode 
is not working properly on Xorg
[1] https://bugs.openjdk.java.net/browse/JDK-7158311 
GraphicsDevice.setDisplayMode(...) leads to hang when DISPLAY 
variable points to Oracle Linux
[2] https://bugs.openjdk.java.net/browse/JDK-7155963 Deadlock in 
SystemFlavorMap.getFlavorsForNative and SunToolkit.awtLock
[3] https://bugs.openjdk.java.net/browse/JDK-8129119 Consider 
reducing the time while the AWTLock is held


--
Thanks,

Alexander.



--
Best regards, Sergey.




AWT Dev [9] Review request for 8129116: Deadlock with multimonitor fullscreen windows.

2015-06-18 Thread Alexander Zvegintsev

Hello

please review the fix
http://cr.openjdk.java.net/~azvegint/jdk/9/8129116/00/
for the issue
https://bugs.openjdk.java.net/browse/JDK-8129116

This deadlock occurs when we setting a fullscreen window on each 
graphics device sequentially without a delay.

EventQueue.invokeAndWait(() - {
for (GraphicsDevice device : devices) {
device.setFullScreenWindow(new Frame());
}
});

It happens even for non-exclusive fullscreen mode too (before the 
JDK-8051617[0] fix).


Currently we are dispatching events in XToolkit under the awtLock. The 
fix simply releases this acquired awtLock to avoid deadlock.
However we have a couple of issues ([1], [2]) with similar fixes. This 
repetitive pattern doesn't look good to me,
so I created JDK-8129119 [3] to consider releasing awtLock upon 
dispatchEvent call in XToolkit.


[0] https://bugs.openjdk.java.net/browse/JDK-8051617 Fullscreen mode is 
not working properly on Xorg
[1] https://bugs.openjdk.java.net/browse/JDK-7158311 
GraphicsDevice.setDisplayMode(...) leads to hang when DISPLAY variable 
points to Oracle Linux
[2] https://bugs.openjdk.java.net/browse/JDK-7155963 Deadlock in 
SystemFlavorMap.getFlavorsForNative and SunToolkit.awtLock
[3] https://bugs.openjdk.java.net/browse/JDK-8129119 Consider reducing 
the time while the AWTLock is held


--
Thanks,

Alexander.



Re: AWT Dev [9] Review request for 8129116: Deadlock with multimonitor fullscreen windows.

2015-06-18 Thread Sergey Bylokhov

Hi, Alexander.
The fix looks fine to me.

On 18.06.15 16:47, Alexander Zvegintsev wrote:

Hello

please review the fix
http://cr.openjdk.java.net/~azvegint/jdk/9/8129116/00/
for the issue
https://bugs.openjdk.java.net/browse/JDK-8129116

This deadlock occurs when we setting a fullscreen window on each 
graphics device sequentially without a delay.

EventQueue.invokeAndWait(() - {
for (GraphicsDevice device : devices) {
device.setFullScreenWindow(new Frame());
}
});

It happens even for non-exclusive fullscreen mode too (before the 
JDK-8051617[0] fix).


Currently we are dispatching events in XToolkit under the awtLock. The 
fix simply releases this acquired awtLock to avoid deadlock.
However we have a couple of issues ([1], [2]) with similar fixes. This 
repetitive pattern doesn't look good to me,
so I created JDK-8129119 [3] to consider releasing awtLock upon 
dispatchEvent call in XToolkit.


[0] https://bugs.openjdk.java.net/browse/JDK-8051617 Fullscreen mode 
is not working properly on Xorg
[1] https://bugs.openjdk.java.net/browse/JDK-7158311 
GraphicsDevice.setDisplayMode(...) leads to hang when DISPLAY variable 
points to Oracle Linux
[2] https://bugs.openjdk.java.net/browse/JDK-7155963 Deadlock in 
SystemFlavorMap.getFlavorsForNative and SunToolkit.awtLock
[3] https://bugs.openjdk.java.net/browse/JDK-8129119 Consider reducing 
the time while the AWTLock is held


--
Thanks,

Alexander.



--
Best regards, Sergey.