Re: [OpenJDK 2D-Dev] RFR: 8197825: [Test] Intermittent timeout with javax/swing JColorChooser Test [v4]

2021-01-30 Thread Alexey Ivanov
On Sat, 30 Jan 2021 05:10:07 GMT, Prasanta Sadhukhan  
wrote:

>>> Does this volatile modifier resolve the now-removed infinite loop in `while 
>>> (!tk.IsDisposed())` in `WToolkit_shutdown`?
>> 
>> The loop should not be removed.
>
> Unfortunately, volatile modifier has no effect if infinite loop is 
> reinstated..

> > Does this volatile modifier resolve the now-removed infinite loop in `while 
> > (!tk.IsDisposed())` in `WToolkit_shutdown`?
> 
> The loop should not be removed.

No, it should not, as you noted previously.

However, making `m_breakMessageLoop` volatile does not look right either. If 
`QuitMessageLoop` is called from `!IsMainThread()` thread, it is posted as a 
message to run on the correct thread. Thus `m_breakMessageLoop` should be 
accessed on a single thread only; if it's the case, volatile is unneeded.

And @prsadhuk's latest test confirms it. There must be something elseā€¦

-

PR: https://git.openjdk.java.net/jdk/pull/2220


Re: [OpenJDK 2D-Dev] RFR: 8197825: [Test] Intermittent timeout with javax/swing JColorChooser Test [v4]

2021-01-29 Thread Prasanta Sadhukhan
On Fri, 29 Jan 2021 23:46:14 GMT, Sergey Bylokhov  wrote:

>> src/java.desktop/windows/native/libawt/windows/awt_Toolkit.h line 478:
>> 
>>> 476: BOOL m_breakOnError;
>>> 477: 
>>> 478: volatile BOOL  m_breakMessageLoop;
>> 
>> Does this volatile modifier resolve the now-removed infinite loop in `while 
>> (!tk.IsDisposed())` in `WToolkit_shutdown`?
>
>> Does this volatile modifier resolve the now-removed infinite loop in `while 
>> (!tk.IsDisposed())` in `WToolkit_shutdown`?
> 
> The loop should not be removed.

Unfortunately, volatile modifier has no effect if infinite loop is reinstated..

-

PR: https://git.openjdk.java.net/jdk/pull/2220


Re: [OpenJDK 2D-Dev] RFR: 8197825: [Test] Intermittent timeout with javax/swing JColorChooser Test [v4]

2021-01-29 Thread Sergey Bylokhov
On Fri, 29 Jan 2021 20:19:43 GMT, Alexey Ivanov  wrote:

> Does this volatile modifier resolve the now-removed infinite loop in `while 
> (!tk.IsDisposed())` in `WToolkit_shutdown`?

The loop should not be removed.

-

PR: https://git.openjdk.java.net/jdk/pull/2220


Re: [OpenJDK 2D-Dev] RFR: 8197825: [Test] Intermittent timeout with javax/swing JColorChooser Test [v4]

2021-01-29 Thread Alexey Ivanov
On Fri, 29 Jan 2021 18:05:07 GMT, Prasanta Sadhukhan  
wrote:

>> This test was failing in our nightly mach5 testing. Appropriate stability 
>> code in form of waitForIdle and delay is added.
>> mach5 job running for several iterations on all platforms is ok. Link in JBS.
>
> Prasanta Sadhukhan has updated the pull request incrementally with one 
> additional commit since the last revision:
> 
>   Declare m_breakMessageLoop volatile

src/java.desktop/windows/native/libawt/windows/awt_Toolkit.h line 478:

> 476: BOOL m_breakOnError;
> 477: 
> 478: volatile BOOL  m_breakMessageLoop;

Does this volatile modifier resolve the now-removed infinite loop in `while 
(!tk.IsDisposed())` in `WToolkit_shutdown`?

-

PR: https://git.openjdk.java.net/jdk/pull/2220


Re: [OpenJDK 2D-Dev] RFR: 8197825: [Test] Intermittent timeout with javax/swing JColorChooser Test [v4]

2021-01-29 Thread Prasanta Sadhukhan
> This test was failing in our nightly mach5 testing. Appropriate stability 
> code in form of waitForIdle and delay is added.
> mach5 job running for several iterations on all platforms is ok. Link in JBS.

Prasanta Sadhukhan has updated the pull request incrementally with one 
additional commit since the last revision:

  Declare m_breakMessageLoop volatile

-

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/2220/files
  - new: https://git.openjdk.java.net/jdk/pull/2220/files/6fdcc0d7..d7dc2a52

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk=2220=03
 - incr: https://webrevs.openjdk.java.net/?repo=jdk=2220=02-03

  Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod
  Patch: https://git.openjdk.java.net/jdk/pull/2220.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/2220/head:pull/2220

PR: https://git.openjdk.java.net/jdk/pull/2220