<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<font face="Monaco">Hi all,<br>
<br>
Please, review a fix for:<br>
<a class="moz-txt-link-freetext" href="https://bugs.openjdk.java.net/browse/JDK-8200387">https://bugs.openjdk.java.net/browse/JDK-8200387</a><br>
<br>
Webrev:<br>
<a class="moz-txt-link-freetext" href="http://cr.openjdk.java.net/~sspitsyn/webrevs/2018/8200387-graal-queue.1/">http://cr.openjdk.java.net/~sspitsyn/webrevs/2018/8200387-graal-queue.1/</a><br>
<br>
Summary:<br>
A number of tests are failing when executed with Graal compiler.<br>
The issue is that the </font><font face="Monaco"><font
face="Monaco">JDI client </font>event queue becomes overloaded:</font><br>
<pre> 248 private synchronized void controlEventFlow(int maxQueueSize) {
249 if (!eventsHeld && (maxQueueSize > OVERLOADED_QUEUE)) {
250 eventController().hold();
251 eventsHeld = true;
252 } else if (eventsHeld && (maxQueueSize < UNDERLOADED_QUEUE)) {
253 eventController().release();
254 eventsHeld = false;
255 }
256 }</pre>
<font face="Monaco"> with the events generated from the Graal
compiler execution.<br>
As a result, the </font>eventsHeld<font face="Monaco"> mode is
enabled.<br>
The tests hang because the back-end does not get needed commands
from the JDI client.<br>
Thanks a lot to Igor Veresov for the analysis and suggested
fixes!<br>
After some discussion we agreed on the work around fix in webrev<br>
which is to increase the </font>OVERLOADED_QUEUE value.<br>
<br>
<font face="Monaco"> In fact, the tests have to be fixed as well to
filter out the Graal threads posting the events.<br>
At this point, fixing of all these tests requires resources but
not that critical.<br>
</font><font face="Monaco"><font face="Monaco">Now, </font>there
is a mess with a relatively big number of the tests failing with
different failure modes.<br>
The corresponding bugs have already been filed (not sure, all of
them).<br>
This fix is the first step and a good base for sorting out the
rest of the Graal related issues.<br>
<br>
I've just filed one more Graal bug that was masked other bugs:<br>
<a class="moz-txt-link-freetext" href="https://bugs.openjdk.java.net/browse/JDK-8203809">https://bugs.openjdk.java.net/browse/JDK-8203809</a><br>
and suspect, more bugs might be needed to cover all different
failure modes.<br>
Such bugs should include sub-tasks for including the impacted
tests into the </font><font face="Monaco"><font face="Monaco">ProblemList-graal.<br>
<br>
</font> A part of the fix is a </font><font face="Monaco">ProblemList-graal.txt
update.<br>
Almost all the tests listed in the following Graal related bug
stopped failing with the the fix:<br>
<a class="moz-txt-link-freetext" href="https://bugs.openjdk.java.net/browse/JDK-8195600">https://bugs.openjdk.java.net/browse/JDK-8195600</a><br>
So, these tests are removed from the </font><font face="Monaco"><font
face="Monaco"><font face="Monaco">ProblemList-graal.</font></font>
</font><br>
<br>
<font face="Monaco">Thanks,<br>
Serguei<br>
<br>
<br>
</font><font face="Monaco"></font><font face="Monaco"><br>
</font><font face="Monaco"><br>
</font>
</body>
</html>