IBM Support

IJ18018: JAVA JIT: COMPILE TIME CRASH IN INSTANCEOFORCHECKCAST()

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 received while JIT compiling a method.
    .
    Stack Trace: {libj9jit29.so}{instanceOfOrCheckCast}
    {libj9jit29.so}{jitCTInstanceOf}
    {libj9jit29.so}{TR_J9VM::isInstanceOf(TR_OpaqueClassBlock*,TR_Op
    aqueClassBlock*,bool,bool,bool)}
    {libj9jit29.so}{J9::ValuePropagation::constrainRecognizedMethod(
    TR::Node*)}
    {libj9jit29.so}{constrainCall(OMR::ValuePropagation*,TR::Node*)}
    {libj9jit29.so}{OMR::ValuePropagation::launchNode(TR::Node*,TR::
    Node*,int)}
    {libj9jit29.so}{constrainChildren(OMR::ValuePropagation*,TR::Nod
    e*)}
    {libj9jit29.so}{OMR::ValuePropagation::launchNode(TR::Node*,TR::
    Node*,int)}
    {libj9jit29.so}{OMR::ValuePropagation::processTrees(TR::TreeTop*
    ,TR::TreeTop*)}
    {libj9jit29.so}{TR::GlobalValuePropagation::processBlock(TR_Stru
    ctureSubGraphNode*,bool,bool)}
    {libj9jit29.so}{TR::GlobalValuePropagation::processStructure(TR_
    StructureSubGraphNode*,bool,bool)}
    {libj9jit29.so}{TR::GlobalValuePropagation::processRegionNode(TR
    _StructureSubGraphNode*,bool,bool)}
    {libj9jit29.so}{TR::GlobalValuePropagation::processRegionNode(TR
    _StructureSubGraphNode*,bool,bool)}
    .
    

Local fix

  • The problem can be avoided by setting the following environment
    variable before starting the JVM.
    TR_disableVPFoldRecognizedMethod=1
    This option will cause the JIT to disable a small optimization
    where the issue exists. This option may show a minor effect on
    performance.
    

Problem summary

  • In some cases an class that is still unresolved at JIT compile
    time can result in a NULL pointer to be dereferenced causing a
    SIGSEGV to occur.
    

Problem conclusion

  • The JIT was modified such that it will not attempt this
    particular optimization unless the classes involved are
    resolved.
    .
    This APAR will be fixed in the following Java Releases:
       8    SR5 FP41  (8.0.5.41)
    .
    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

    IJ18018

  • 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-07-30

  • Closed date

    2019-08-26

  • Last modified date

    2019-08-26

  • 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

[{"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:
26 August 2019