[OpenJDK 2D-Dev] RFR: 8028539: Endless loop in native code of sun.java2d.loops.ScaledBlit
Jim Graham
james.graham at oracle.com
Mon Oct 27 22:02:14 UTC 2014
That looks good. You bring up good points as well. The main thing I
was worried about is hanging an automated regression test run if there
is ever a regression...
...jim
On 10/27/14 2:49 PM, Phil Race wrote:
> I can add othervm but each VM invocation slows down the
> overall testing time and I'd like to think this only will be run on
> versions that do not have the bug.
>
> I added the custom time out code so that I was not reliant on the
> harness to test.
>
> Certainly I can delete all of that and just go to
> @run main/othervm/timeout=60
>
> 60 up from 15 because it needs to include othervm overhead and
> avoid/minimise spurious failures
>
> See http://cr.openjdk.java.net/~prr/8028539.1/
>
> -phil.
>
> On 10/27/2014 2:10 PM, Jim Graham wrote:
>> The fix looks fine. Isn't there a timeout you can set on the unit
>> test rather than rolling your own inside the test? Also, even if you
>> interrupt the test, if the failure mode is an infinite loop in native
>> code then the VM you are running in is probably not going to be happy.
>> That only happens when the test fails, but is it worth running in a
>> separate VM just in case?
>>
>> ...jim
>>
>> On 10/27/14 1:51 PM, Phil Race wrote:
>>> https://bugs.openjdk.java.net/browse/JDK-8028539
>>> http://cr.openjdk.java.net/~prr/8028539/
>>>
>>> The trigger for the bug is that there is a translate component on the
>>> graphics
>>> which overflows what can be stored in a integer, and the native code we
>>> reach
>>> cannot handle this.
>>>
>>> Although the sofware loops was hanging, additionally D3D and OGL on
>>> Windows
>>> were not clipping this properly. The rendering appeared on screen
>>> when it
>>> should have been clipped.
>>>
>>> The fix is to add a test to see if any value overflows and then punt to
>>> the TransformHelper code which can handle and clip this properly.
>>>
>>> -phil.
>
More information about the 2d-dev
mailing list