RFR(S): 8200387: [Graal] fromTonga/nsk/jdi tests hang with Graal as JIT

serguei.spitsyn at oracle.com serguei.spitsyn at oracle.com
Tue Jun 5 21:49:32 UTC 2018


Hi Alex,

Thank you a lot for review!

Thanks,
Serguei

On 6/5/18 12:41, Alex Menkov wrote:
> Looks okay to me.
>
> --alex
>
> On 05/24/2018 22:43, serguei.spitsyn at oracle.com wrote:
>> Hi all,
>>
>> Please, review a fix for:
>> https://bugs.openjdk.java.net/browse/JDK-8200387
>>
>> Webrev:
>> http://cr.openjdk.java.net/~sspitsyn/webrevs/2018/8200387-graal-queue.1/
>>
>> Summary:
>>    A number of tests are failing when executed with Graal compiler.
>>    The issue is that the JDI client event queue becomes overloaded:
>>
>>   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     }
>>
>>    with the events generated from the Graal compiler execution.
>>    As a result, the eventsHeldmode is enabled.
>>    The tests hang because the back-end does not get needed commands 
>> from the JDI client.
>>    Thanks a lot to Igor Veresov for the analysis and suggested fixes!
>>    After some discussion we agreed on the work around fix in webrev
>>    which is to increase the OVERLOADED_QUEUE value.
>>
>>    In fact, the tests have to be fixed as well to filter out the 
>> Graal threads posting the events.
>>    At this point, fixing of all these tests requires resources but 
>> not that critical.
>> Now, there is a mess with a relatively big number of the tests 
>> failing with different failure modes.
>>    The corresponding bugs have already been filed (not sure, all of 
>> them).
>>    This fix is the first step and a good base for sorting out the 
>> rest of the Graal related issues.
>>
>>    I've just filed one more Graal bug that was masked other bugs:
>> https://bugs.openjdk.java.net/browse/JDK-8203809
>>    and suspect, more bugs might be needed to cover all different 
>> failure modes.
>>    Such bugs should include sub-tasks for including the impacted 
>> tests into the ProblemList-graal.
>>
>>    A part of the fix is a ProblemList-graal.txt update.
>>    Almost all the tests listed in the following Graal related bug 
>> stopped failing with the the fix:
>> https://bugs.openjdk.java.net/browse/JDK-8195600
>>    So, these tests are removed from the ProblemList-graal.
>>
>> Thanks,
>> Serguei
>>
>>
>>
>>



More information about the serviceability-dev mailing list