VOOZH about

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

⇱ IJ35230: JIT Compiler crash on z/OS or Linux on Z in OMR::CodeGenerator::decReferenceCount with vmState=0x0005ff04


IJ35230: JIT Compiler crash on z/OS or Linux on Z in OMR::CodeGenerator::decReferenceCount with vmState=0x0005ff04

APAR status

  • Closed as program error.

Error description

  • Error Message: Unhandled exception
    Unhandled exception
    Type=Segmentation error vmState=0x0005ff04
    J9Generic_Signal_Number=00000018 Signal_Number=0000000b
    Error_Value=00000000 Signal_Code=00000035
    ...
    ...
    Method_being_compiled=<Signature of Java package/class.method
    that crashed during JIT compilation>
    
    .
    Stack Trace:
    OMR::CodeGenerator::decReferenceCount(TR::Node*)+0xea452c50
    (0x0000000000000000)
    genericRotateAndInsertHelper(TR::Node*,TR::CodeGenerator*)+0xea4
    30358 (0x0000000000000000)
    OMR::Z::TreeEvaluator::iandEvaluator(TR::Node*,TR::CodeGenerator
    *)+0xea424528 (0x0000000000000000)
    OMR::CodeGenerator::evaluate(TR::Node*)+0xea4534c0
    (0x0000000000000000)
    OMR::Z::TreeEvaluator::iRegStoreEvaluator(TR::Node*,TR::CodeGene
    rator*)+0xea6a3f90 (0x0000000000000000)
    OMR::CodeGenerator::evaluate(TR::Node*)+0xea4534c0
    (0x0000000000000000)
    J9::CodeGenerator::doInstructionSelection()+0xeac345f8
    (0x0000000000000000)
    

Local fix

  • The failing method being compiled can be excluded from JIT
    compilation using -Xjit:exclude={<package/class.method*>}
    

Problem summary

  • The JIT Compiler on z/OS and Linux on Z may perform an
    optimization that causes a bit-wise-and operation to be folded
    by exploiting rotate-and-insert instruction. In the failing
    scenario, this optimization results in operands of the
    bit-wise-and operation to be incorrectly evaluated twice,
    resulting a crash when over decrementing the node's reference
    count.
    

Problem conclusion

  • The problem is resolved by limiting the JIT Compiler to only
    perform this optimization when the bit-wise-and node's reference
    count is equal to 1, avoiding the problematic scenario.
    .
    This APAR will be fixed in the following Java Releases:
     8 SR7 FP5 (8.0.7.5)
    .
    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

    IJ35230

  • Reported component name

    JIT

  • Reported component ID

    620700124

  • Reported release

    130

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2021-09-28

  • Closed date

    2021-09-29

  • Last modified date

    2021-11-30

  • 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

[{"Line of Business":{"code":"LOB36","label":"IBM Automation"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSNVBF","label":"Runtimes for Java Technology"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"130"}]

Document Information

Modified date:
30 November 2021