IBM Support

IV93536: JAVA JIT: CRASH WHEN USING THE BALANCED GC POLICY ON POWER CPUS

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: SIGSEGV executing inside JIT compiled code is the
    most likely result of this problem, but other symptoms like a
    crash in the GC or the VM is also possible.
    .
    Stack Trace: The stack trace will likely be different for
    difference instances of the problem.
    .
    The problem can only occur on POWER machines (AIX and Linux PPC)
    and can only happen when running the 64bit version of the JVM.
    The problem was fixed in Java 6.0, 6.1 and 7.0, but we suspect
    that the issue is only possible when using the balanced GC
    policy which was introduced in Java 7.1.
    

Local fix

  • The problem should be avoidable by not using the Balanced GC
    policy). i.e. remove the Java command line option
    "-Xgcpolicy:balanced".
    

Problem summary

  • The JIT would incorrectly spill a register using 32bit
    store/load instructions in a rare case late in the code
    generation stage after determining that a load offset is large
    enough to require the use of a temporary register.
    

Problem conclusion

  • The JIT was modified so that it generates 64bit store/load
    instructions for the rare path register spill when running a
    64bit JVM.
    

Temporary fix

Comments

APAR Information

  • APAR number

    IV93536

  • Reported component name

    JIT

  • Reported component ID

    620700124

  • Reported release

    130

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2017-02-17

  • Closed date

    2017-04-27

  • Last modified date

    2017-04-27

  • 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

    JIT

  • Fixed component ID

    620700124

Applicable component levels

  • R130 PSY

       UP

  • R260 PSY

       UP

  • R600 PSY

       UP



Document information

More support for: Runtimes for Java Technology
Just In Time (JIT) Compiler

Software version: 130

Reference #: IV93536

Modified date: 27 April 2017