IBM Support

IV88646: JVM CRASHES WHEN TRYING TO PRINT A STACK TRACE

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: A SIGSEGV or GPF is raised in libj9vm26.so when a
    Java program tries to print the stack trace stored in a
    Throwable object
    .
    Stack Trace: Native stack:
    getOriginalROMMethod
    iterateStackTrace
    getStackTrace
    java_lang_J9VMInternals_getStackTrace
    Java stack:
    java/lang/J9VMInternals.getStackTrace
    java/lang/Throwable.getInternalStackTrace
    java/lang/Throwable.printStackTrace
    java/lang/Throwable.printStackTrace
    .
    

Local fix

  • -Xnoclassgc
    This option prevents class unloading. Note that this option may
    increase the memory footprint of the application
    

Problem summary

  • When trying to print the stack trace stored in a Throwable
    object, it is possible for the class of one of the methods in
    the stack trace to get unloaded. If that method was JIT compiled
    and the unloading happens during a narrow timing window, then
    the metadata structure describing said method will get altered
    which could lead to a NULL dereference.
    

Problem conclusion

  • The JVM has been updated to prevent altering of the metadata
    structure while it is still in use during the printing of a
    stack trace
    .
    This APAR will be fixed in the following Java Releases:
       6 R1 SR8 FP40  (6.1.8.40)
       7 R1 SR3 FP60  (7.1.3.60)
       7    SR10      (7.0.10.0)
       8    SR3 FP12  (8.0.3.12)
    .
    Contact your IBM Product's Service Team for these Service
    Refreshes and Fix Packs.
    For those running stand-alone, information about the available
    Service Refreshes and Fix Packs can be found at:
               https://www.ibm.com/developerworks/java/jdk/
    

Temporary fix

Comments

APAR Information

  • APAR number

    IV88646

  • Reported component name

    J9 COMMON CODE

  • Reported component ID

    620700127

  • Reported release

    260

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2016-08-24

  • Closed date

    2016-08-29

  • Last modified date

    2016-10-28

  • 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

    J9 COMMON CODE

  • Fixed component ID

    620700127

Applicable component levels

  • R260 PSY

       UP

  • R270 PSY

       UP



Document information

More support for: Runtimes for Java Technology
Virtual Machine

Software version: 260

Reference #: IV88646

Modified date: 28 October 2016