[OpenJDK 2D-Dev] <AWT Dev> JVM crash in AWT native code - just in lambda forest

Andrew Brygin andrew.brygin at oracle.com
Tue Oct 9 00:24:17 PDT 2012


This crash is a known problem, and it was resolved in jdk8
by a fix for CR 7150594: 
http://hg.openjdk.java.net/jdk8/2d/jdk/rev/ecc1c8085ec7

This fix was pushed into jdk8 master repository about September 5th,
so the problem has to disappear when this fix will be merged into the
lambda repository.

Thanks,
Andrew

On 08.10.2012 17:03, Anthony Petrov wrote:
> BTW, this is 2D code. I'm cc'ing 2d-dev@ and bcc'ing awt-dev at .
>
> -- 
> best regards,
> Anthony
>
> On 10/07/12 23:16, Peter Levart wrote:
>> Hi all,
>>
>> I'm cross-posting this to lambda and awt lists. Although it happens in
>> AWT code, the crash might or might not have anything to do with AWT. See
>> below...
>>
>>
>> When trying to start NetBeans 7.3beta using OpenJDK built from head of
>> lambda forest using either old or new build system, the JVM crashes in
>> native code always in the same function:
>>
>> # A fatal error has been detected by the Java Runtime Environment:
>> #
>> # SIGSEGV (0xb) at pc=0x00007f84da3ba913, pid=9489, tid=140208720062208
>> #
>> # JRE version: OpenJDK Runtime Environment (8.0)
>> # Java VM: OpenJDK 64-Bit Server VM (25.0-b02 mixed mode linux-amd64
>> compressed oops)
>> # Problematic frame:
>> # C [libmlib_image.so+0x94913] mlib_ImageSet+0x13
>> #
>> ...
>> ...
>> Stack: [0x00007f84e2d42000,0x00007f84e2f43000], sp=0x00007f84e2f3e9e0,
>> free space=2034k
>> Native frames: (J=compiled Java code, j=interpreted, Vv=VM code,
>> C=native code)
>> C [libmlib_image.so+0x94913] mlib_ImageSet+0x13
>> C [libmlib_image.so+0x94aa8] j2d_mlib_ImageCreateStruct+0x68
>> C [libawt.so+0x884cf] allocateArray+0x4af
>> C [libawt.so+0x8a328] Java_sun_awt_image_ImagingLib_convolveBI+0x2c8
>> j
>> sun.awt.image.ImagingLib.convolveBI(Ljava/awt/image/BufferedImage;Ljava/awt/image/BufferedImage;Ljava/awt/image/Kernel;I)I+0 
>>
>>
>> j
>> sun.awt.image.ImagingLib.filter(Ljava/awt/image/BufferedImageOp;Ljava/awt/image/BufferedImage;Ljava/awt/image/BufferedImage;)Ljava/awt/image/BufferedImage;+223 
>>
>>
>> j
>> java.awt.image.ConvolveOp.filter(Ljava/awt/image/BufferedImage;Ljava/awt/image/BufferedImage;)Ljava/awt/image/BufferedImage;+160 
>>
>>
>> j
>> sun.java2d.pipe.DrawImage.transformImage(Lsun/java2d/SunGraphics2D;Ljava/awt/image/BufferedImage;Ljava/awt/image/BufferedImageOp;II)V+41 
>>
>>
>> j
>> sun.java2d.pipe.ValidatePipe.transformImage(Lsun/java2d/SunGraphics2D;Ljava/awt/image/BufferedImage;Ljava/awt/image/BufferedImageOp;II)V+19 
>>
>>
>> j
>> sun.java2d.SunGraphics2D.drawImage(Ljava/awt/image/BufferedImage;Ljava/awt/image/BufferedImageOp;II)V+15 
>>
>>
>> j
>> org.openide.actions.HeapView.paintDropShadowText(Ljava/awt/Graphics;II)V+136 
>>
>>
>> j org.openide.actions.HeapView.paintComponent(Ljava/awt/Graphics;)V+214
>> j javax.swing.JComponent.paint(Ljava/awt/Graphics;)V+286
>>
>>
>> ...while when running with OpenJDK built from head of jdk8 forest or
>> with 1.8.0-ea-b59 preview release, this does not happen.
>>
>> I'm compiling and running on Linux Fedora 17, amd64.
>>
>> I would like to try a build from jdk8 forest that is as close as
>> possible to the head of lambda forest. Which revision should I choose?
>>
>>
>> Regards, Peter
>>
>> P.S. I checked the code (just source files containing native functions
>> in above stack trace and BufferedImage.java) and they don't differ
>> between jdk8 and lambda heads. But it might be that jdk8 has other
>> differences to lambda that make it execute different AWT code in this
>> situation...
>>
>>
>>



More information about the lambda-dev mailing list