RFR: 8153194: PreserveFPRegistersTest.java runs out of memory in the nightlies

Vladimir Ivanov vladimir.x.ivanov at oracle.com
Tue Jun 28 16:53:51 UTC 2016


Rahul,

> Thank you Vladimir for your comments.
> Yes, agree to your points and made the changes.
> Also additionally added @build (found required when tried the single test run in RBT)
> Please check the revised <webrev.01> : http://cr.openjdk.java.net/~rraghavan/8153194/webrev.01/
> No issues found with local jtreg testing, RBT .

The following lines are redundant:
test/compiler/gcbarriers/PreserveFPRegistersTest.java:

+ * @build ClassFileInstaller sun.hotspot.WhiteBox
+ * @run main ClassFileInstaller sun.hotspot.WhiteBox

No need to install WhiteBox anywhere, bootclasspath mode already handles it.

Otherwise, looks good.

Best regards,
Vladimir Ivanov

>> -----Original Message-----
>> From: Vladimir Ivanov > Sent: Wednesday, June 22, 2016 11:46 PM
>>
>> Thanks for taking care of the bug, Rahul.
>>
>>> Please review the following test fix patch for JDK-8153194.
>>> <webrev.00> :  http://cr.openjdk.java.net/~rraghavan/8153194/webrev.00/
>>
>> + * @run main ClassFileInstaller sun.hotspot.WhiteBox
>> + * @run main/othervm/timeout=300 -XX:+UnlockDiagnosticVMOptions
>> + *      -XX:+WhiteBoxAPI -Xbatch -Xbootclasspath/a:.
>>
>> You can use "@run main/bootclasspath/othervm" instead.
>>
>>
>> +        long regionSize = wb.g1RegionSize();
>>
>> What happens if G1 isn't used? Either explicitly specify -XX:+UseG1GC or
>> use @requires.
>>
>> Otherwise, looks good.
>>
>> Best regards,
>> Vladimir Ivanov
>>
>>>
>>>
>>> Notes:
>>>
>>> https://bugs.openjdk.java.net/browse/JDK-8153194 - PreserveFPRegistersTest.java runs out of memory in the nightlies
>>> https://bugs.openjdk.java.net/browse/JDK-8148175 - C1: G1 barriers don't preserve FP registers
>>>
>>> - 'hotspot/test/compiler/gcbarriers/PreserveFPRegistersTest.java' was added as part of the old JDK-8148175 fix.
>>> - The 'PreserveFPRegistersTest.java' started failing in nightly tests for 64-bit targets only with -XX:-UseCompressedOops enabled.
>>> - Found wrong hard coded usage of reference size as 32 bits in test caused OutOfMemoryError, for -XX:-UseCompressedOops
>> cases.
>>>
>>> Changes done -
>>> - Actual fix of setting reference size using WhiteBox.getHeapOopSize() and removed @ignore.
>>> - Used WhiteBox.g1RegionSize() instead of hard coded value.
>>> - Used -Xmx300m instead of -Xmx128m for run VM options.
>>>   (found this change is required for the test to fail correctly using old JDK9 builds prior to JDK-8148175 fix.
>>>    e.g.: for test to fail with "java.lang.AssertionError: Final value has changed: 0.0 != 6.0" using JDK9-b113.
>>>   Please note same -Xmx300m used for failing case reported in JDK-8148175.
>>> - Added diagnostic output.
>>>
>>> Testing done -
>>> - Confirmed revised test fails as expected using old jdk9 builds prior to JDK-8148175 fix (e.g.: JDK9-b113)
>>>    >> [Test finished: compiler/gcbarriers/PreserveFPRegistersTest.java: Failed. Execution failed: `main' threw exception:
>> java.lang.AssertionError: Final value has changed: 0.0 != 6.0]
>>> (for default run and with -XX:-UseCompressedOops)
>>>
>>> -  Confirmed revised test is passing for latest source build (.i.e. with JDK-8148175 fix, starting from JDK9-b114)
>>> (with and without -XX:-UseCompressedOops)
>>>
>>>
>>> Thanks,
>>> Rahul
>>>


More information about the hotspot-compiler-dev mailing list