IBM Support

IV86398: CRASH IN SUN/AWT/IMAGE/JPEGIMAGEDECODER.READIMAGE

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

APAR status

  • Closed as program error.

Error description

  • Error Message: j9vm.227    *   ** ASSERTION FAILED ** at
    vmaccess.c:273: ((vmThread)->publicFlags &
    J9_PUBLIC_FLAGS_VM_ACCESS)
    .
    Stack Trace: Java callstack:-
    at sun/awt/image/JPEGImageDecoder.readImage(Native Method)
    at
    sun/awt/image/JPEGImageDecoder.produceImage(JPEGImageDecoder.jav
    a:131)
    at
    sun/awt/image/InputStreamImageSource.doFetch(InputStreamImageSou
    rce.java:258)
    at sun/awt/image/ImageFetcher.fetchloop(ImageFetcher.java:184)
    at sun/awt/image/ImageFetcher.run(ImageFetcher.java:148)
    Native Call Stack:-
    j9dump_create () from
    ./opt/java/java6/jre/lib/i386/libj9prt24.so
    doSystemDump () from ./opt/java/java6/jre/lib/i386/libj9dmp24.so
    protectedDumpFunction () from
    ./opt/java/java6/jre/lib/i386/libj9dmp24.so
    j9sig_protect () from
    ./opt/java/java6/jre/lib/i386/libj9prt24.so
    runDumpFunction () from
    ./opt/java/java6/jre/lib/i386/libj9dmp24.so
    runDumpAgent () from ./opt/java/java6/jre/lib/i386/libj9dmp24.so
    triggerDumpAgents () from
    ./opt/java/java6/jre/lib/i386/libj9dmp24.so
    twAssertion () from ./opt/java/java6/jre/lib/i386/libj9trc24.so
    logTracePoint () from
    ./opt/java/java6/jre/lib/i386/libj9ute24.so
    utsTraceV () from ./opt/java/java6/jre/lib/i386/libj9ute24.so
    j9Trace () from ./opt/java/java6/jre/lib/i386/libj9trc24.so
    internalReleaseVMAccessNoMutex () from
    ./opt/java/java6/jre/lib/i386/libj9vm24.so
    internalReleaseVMAccess () from
    ./opt/java/java6/jre/lib/i386/libj9vm24.so
    releasePrimitiveArrayCritical () from
    ./opt/java/java6/jre/lib/i386/libj9vm24.so
    checkReleasePrimitiveArrayCritical () from
    ./opt/java/java6/jre/lib/i386/libj9jnichk24.so
    Java_sun_awt_image_JPEGImageDecoder_readImage () from
    ./opt/java/java6/jre/lib/i386/libjpeg.so
    VMprJavaSendNative () from
    ./opt/java/java6/jre/lib/i386/libj9vm24.so
    ?? ()
    javaProtectedThreadProc () from
    ./opt/java/java6/jre/lib/i386/libj9vm24.so
    j9sig_protect () from
    ./opt/java/java6/jre/lib/i386/libj9prt24.so
    javaThreadProc () from
    ./opt/java/java6/jre/lib/i386/libj9vm24.so
    thread_wrapper () from
    ./opt/java/java6/jre/lib/i386/libj9thr24.so
    start_thread () from ./lib/libpthread.so.0
    clone () from ./lib/libc.so.6
    .
    While enabling -Xcheck:jni:all,nowarn,noadvice,nonfatal option,
    customer observe the following message in stderr logs:-
    JVMJNCK023E JNI error detected. Continuing...
    JVMJNCK029E JNI error in GetArrayLength: This function cannot be
    called inside of a critical section
    JVMJNCK077E Error detected in
    sun/awt/image/JPEGImageDecoder.readImage(Ljava/io/InputStream;<O
    SB>B)V
    Also, this may lead to some other unpredictable behavior like
    hang.
    

Local fix

  • N/A
    

Problem summary

  • The problem is caused while processing the JPEG files where a
    JNI method was called inside a critical section.
    

Problem conclusion

  • The JDK has been updated to make the JNI call before acquiring
    the critical section.
    .
    This APAR will be fixed in the following Java Releases:
       8    SR3 FP1   (8.0.3.11)
       7    SR9 FP60  (7.0.9.60)
       7 R1 SR3 FP60  (7.1.3.60)
       6    SR16 FP35 (6.0.16.35)
       6 R1 SR8 FP35  (6.1.8.35)
    

Temporary fix

Comments

APAR Information

  • APAR number

    IV86398

  • Reported component name

    JAVA CLASS LIBS

  • Reported component ID

    620700130

  • Reported release

    600

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2016-06-30

  • Closed date

    2016-08-23

  • Last modified date

    2016-08-23

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    JAVA CLASS LIBS

  • Fixed component ID

    620700130

Applicable component levels

  • R600 PSY

       UP

  • R700 PSY

       UP

  • R800 PSY

       UP



Document information

More support for: Runtimes for Java Technology
Java Class Libraries

Software version: 6.0

Reference #: IV86398

Modified date: 23 August 2016