VOOZH about

URL: https://www.ibm.com/support/pages/apar/IJ15120

⇱ IJ15120: CRASH IN JIT COMPILED CODE DUE TO LACK OF RANGE CHECK


IJ15120: CRASH IN JIT COMPILED CODE DUE TO LACK OF RANGE CHECK

APAR status

  • Closed as program error.

Error description

  • Error Message: Segmentation Error
    .
    Stack Trace: The crash location will be in code generated into
    memory by the Java JIT compiler - the location will vary but the
    faulting instruction will be near a conditional branch.
    .
    

Local fix

  • The problem can be avoided by using -Xjit:disableInlining. Using
    this option globally will have a large negative impact on
    performance.
    To limit the performance impact it is recommended you apply the
    disableInlining option to the failing method(s) only by using
    the following syntax:
    -Xjit:{*class.method*}(disableInlining)
    Using disableInlining on a single method is unlikely to result
    in a noticeable impact on performance.
    

Problem summary

  • When a method is inlined by the JIT compiler, the generated code
    needs to have a safety check to ensure that the method inlined
    at compile-time is the correct method to run when the code is
    actually running. This check involves reading an entry at a
    fixed offset from the class's virtual function table. The
    compiler did not range check the offset against the size of the
    lookup table which could lead to a crash reading invalid memory
    in certain rare circumstances.
    

Problem conclusion

  • A range check has been added to the inline method check to
    ensure we do not read invalid memory.
    .
    This APAR will be fixed in the following Java Releases:
     8 SR5 FP31 (8.0.5.31)
    .
    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

    IJ15120

  • Reported component name

    JIT

  • Reported component ID

    620700124

  • Reported release

    130

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2019-03-29

  • Closed date

    2019-03-29

  • Last modified date

    2019-03-29

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

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

  • Fixed component name

    JIT

  • Fixed component ID

    620700124

Applicable component levels

[{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SSC9HBA","label":"Just In Time (JIT) Compiler"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"130","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
29 March 2019