IBM Support

PH27326: DFHSM0002 SEVERE ERROR CODE 0316 IN MODULE DFHSMGF FREEMAINING AN IPIC BUFFER IS_BUFF

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • You are running CICS TS 5.4 and receive the following
    error message:
    DFHSM0002 A SEVERE ERROR (CODE X'0316') HAS OCCURRED
              IN MODULE DFHSMGF.
    Reviewing the dump at the time of this error shows the
    following exception trace:
    SM 0316 SMGF  *EXC* - Freemain_of_pages_not_owned_by_subpool -
                   FUNCTION(FREEMAIN)
                   ADDRESS(xxxxxxxx) REMARK(IS_BUFF)
    The address xxxxxxxx is already free at the time of the dump
    causing the exception.
    Here are the trace entries prior to the exception:
    
    IS 0900 ISZA  ENTRY - FUNCTION(FREE_ISSB)    ISSB_PTR(address)
    IS 0800 ISAL  ENTRY - FUNCTION(FREE_RECEIVE) ISSB_PTR(address
    SM 0301 SMGF  ENTRY - FUNCTION(FREEMAIN) ADDRESS(xxxxxxxx)
                  REMARK(IS_BUFF))
    
    The failing task is associated with an IP interconnectivity-IPIC
    session and attempting to freemain an IS Buffer it used.
    
    
    Trace showed the issue where a task using this IS_BUFF xxxxxxxx,
    was in FREE_ISSB processing when it was suspended for the
    SMLOCK.
    While suspended, the client sent in more data, which was handled
    by the IPIC request/response receiver- tran CISR. It incorrectly
    used this buffer xxxxxxxx, before the FREE_ISSB processing had
    completed, resulting in a double freemain of the buffer.
    .
    Additional Symptoms: KIXREVDAM
    IPCONN TCPIPSERVICE
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED: All CICS users.                              *
    ****************************************************************
    * PROBLEM DESCRIPTION: CICS receives a request over IPIC and   *
    *                      runs a mirror task which issues message *
    *                      DFHSM0002.                              *
    ****************************************************************
    A client sends in a DPL request with a channel over an IPIC
    connection.  There is more than 64k of data in the channel.
    
    When the mirror task that processed this request terminates,
    DFHISAL is called to free the IS_BUFF buffers that were used by
    this IPIC session (ISSB).  The FREEMAIN of one of the buffers
    get suspended waiting for the SMLOCK.  This buffer had the
    ISSB_REUSABLE flag set on.
    
    While the mirror task was suspended a second request was sent in
    by the client using the same session.  CISR needs to receive the
    request into a buffer.  It finds an IS_BUFF that has the
    ISSB_REUSABLE flag set on and uses it.  This is the same IS_BUFF
    that DFHISAL was in the process of freeing.
    
    The mirror task eventually obtains the SMLOCK and freemains the
    IS_BUFF.  A new mirror task is then started to process the
    second request.  The received data is in the, now freed,
    IS_BUFF that CISR had reused.  When this second mirror task
    completes it tries to freemain the IS_BUFF again.  This causes
    message DFHSM0002 code(x'0316') to be issued and a dump taken.
    
    Additional keywords: FREE_ISSB IS0002
    

Problem conclusion

  • DFHISAL has been changed to clear the ISSB_REUSABLE flag before
    the call to FREEMAIN the IS_BUFF.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PH27326

  • Reported component name

    CICS TS Z/OS V5

  • Reported component ID

    5655Y0400

  • Reported release

    100

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2020-07-09

  • Closed date

    2020-10-26

  • Last modified date

    2020-11-02

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

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

    UI72239 UI72240 UI72241

Modules/Macros

  • DFHISAL
    

Fix information

  • Fixed component name

    CICS TS Z/OS V5

  • Fixed component ID

    5655Y0400

Applicable component levels

  • R100 PSY UI72241

       UP20/10/28 P F010

  • R200 PSY UI72240

       UP20/10/27 P F010

  • R300 PSY UI72239

       UP20/10/27 P F010

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.

[{"Line of Business":{"code":"LOB35","label":"Mainframe SW"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSGMGV","label":"CICS Transaction Server"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"5.4"}]

Document Information

Modified date:
03 November 2020