IBM Support

PI72792: MEMORY OVERLAY WHEN LOADING AND STORING BIT FIELD

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Loading and storing values from a bit field struct is causing a
    memory write overlay on memory past the end of the bit field.
    The issue occurs when loading and storing 4 bytes when only 3
    bytes should be updated.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED: Users that have a bit field of three bytes   *
    *                 occupying the last three bytes of a bit      *
    *                 field container. For example:typedef struct  *
    *                 {  unsigned   bf1:6;  unsigned   bf2:2;      *
    *                 unsigned   bf3:24;} A;                       *
    *                                                              *
    ****************************************************************
    * PROBLEM DESCRIPTION: The compiler is emitting a load/strore  *
    *                      instruction starting at offset 1 thus   *
    *                      accessing the byte following the bit    *
    *                      field. In most cases this does not      *
    *                      cause a problem since the byte          *
    *                      following the bit field is updated      *
    *                      with the same content it already has,   *
    *                      but when the bit field is at the end    *
    *                      of the address space or at the end of   *
    *                      the page this produces an 0C4 ABEND.    *
    ****************************************************************
    * RECOMMENDATION: Apply the provided PTF                       *
    *                                                              *
    ****************************************************************
    The compiler is producing bad code for sources with bit fields.
    

Problem conclusion

  • Apply provided service.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PI72792

  • Reported component name

    C/C++ FOR MVS

  • Reported component ID

    56551210A

  • Reported release

    791

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2016-11-24

  • Closed date

    2016-11-25

  • Last modified date

    2017-01-03

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

    PI64727

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

    UI42900

Modules/Macros

  •    CCNECICS CCNECWI  CCNEDSCT CCNEDWRT CCNED211
    CCNEFILT CCNEHIFC CCNEMDEP CCNEOPTP CCNEP    CCNEPP   CCNETBY
    CCNMSGE  CCNMSGT
    

Fix information

  • Fixed component name

    C/C++ FOR MVS

  • Fixed component ID

    56551210A

Applicable component levels

  • R791 PSY UI42900

       UP16/12/20 P F612

Fix is available

  • Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.

[{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M","label":"APARs - z\/OS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"791","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSQKCWV","label":"IBM C\/C++ for MVS\/ESA"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"791","Edition":"","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]

Document Information

Modified date:
09 August 2024