IBM Support

PM62672: RECEIVE DFHSM0002 CODE X'0305' IN DFHSMGF TRYING TO FREEMAIN 24-BIT STACK STORAGE KESTK24E DUE TO HAVING A 31-BIT ADDRESS.

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as unreproducible.

Error description

  • Receive the following error:
    .
    DFHSM0002 A SEVERE ERROR (CODE X'0305') HAS OCCURRED IN MODULE
    DFHSMGF
    .
    The problem is that the failing TASK did a Getmain for KESTK24E
    for Address 006B3000 and then tried to Freemain 31-bit Address
    6B300029.
    .
    You can see the following Entries in Trace:
    .
    0302 SMGF  EXIT  - FUNCTION(GETMAIN) RESPONSE(OK)
    ADDRESS(006B3000)
    .
    0301 SMGF  ENTRY - FUNCTION(FREEMAIN) SUBPOOL_TOKEN(2B42D2F0 ,
    0000001B) ADDRESS(6B300029) FREE_LENGTH(1000) REMARK(KESTK24E)
    .
    The problem is exposed by a storage shortage below 16M. The
    trace shows several INSUFFICIENT_STORAGE errors just before
    the freemain error.  At some point, there was a failed getmain
    for 24-bit stack storage.  This meant that a task allocated a
    reserve segment from the emergency kcb_seg24_reserve chain.
    Because of this the count of reserve elements dropped below 8.
    Later on, a newly attached task ran through DFHKEXM and tried
    to getmain a new segment to replenish the reserve chain.
    This task lost control on the SMLOCK.  A second newly attached
    task also executed code in DFHKEXM and this task issued the
    same getmain and also lost control on the SMLOCK.  Eventually,
    the first task completed it;s getmain and the reserve count of
    24-bit stack segments was once again 8.  When the second
    DFHKEXM task completed it's getmain, it detected that the
    reserve count was already 8 so it called
    release_reserve_24_segment to freemain the redundant 24-bit
    segment. release_reserve_24_segment is passed seg_ptr as the
    address to be freemained. This a ptr(24) 3-byte pointer.
    However, release_reserve_24_segment is expecting a ptr(31)
    4-byte pointer. This explains the error in the freemain
    address.
    .
    KIXREVEPH
    Additional Symptom(s) Search Keyword(s):
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED: All                                          *
    ****************************************************************
    * PROBLEM DESCRIPTION: MSGDFHSM0002 severe error code 0305     *
    *                      when issuing a KESTK24E freemain.       *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    DFHKEXM contains code to getmain segment storage below the
    16-megabyte line if the number of available segments falls below
    a certain threshold.
    Two tasks executed getmains from DFHKEXM (which is only called
    during transaction initialization). The first lost control on
    the storage manager lock which allowed the second task to run
    and issue a second getmain from DFHKEXM. The second task then
    lost control, allowing the first task to run again.
    The first task completed its getmain which brought the number
    of available segments back to the threshold value. When the
    second getmain completed, DFHKEXM detected that the segment
    storage was no longer required so called a routine to freemain
    the segment, passing a 24-bit pointer to the storage element.
    The freemain routine expected a 31-bit pointer and consequently
    the address passed to storage manager was invalid. This caused
    message DFHSM0002.
    
    Additional keywords :- SM0002
    

Problem conclusion

Temporary fix

  • FIX AVAILABLE BY PTF ONLY
    

Comments

  • DFHKEXM has been changed to use a 31-bit pointer when addressing
    segment storage.
    

APAR Information

  • APAR number

    PM62672

  • Reported component name

    CICS TS Z/OS V4

  • Reported component ID

    5655S9700

  • Reported release

    600

  • Status

    CLOSED UR3

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2012-04-17

  • Closed date

    2012-05-11

  • Last modified date

    2012-06-03

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

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

    UK78672

Modules/Macros

  •    DFHKEXM
    

Fix information

  • Fixed component name

    CICS TS Z/OS V4

  • Fixed component ID

    5655S9700

Applicable component levels

  • R600 PSY UK78672

       UP12/05/19 P F205

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":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSGMGV","label":"CICS Transaction Server"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"4.1","Edition":"","Line of Business":{"code":"LOB35","label":"Mainframe SW"}},{"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":"4.1","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
03 June 2012