IBM Support

PM82486: ABEND0C4 IN ODBM REFERENCING A FREED WLM PB

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • An ABEND0C4 can occur when one TCB is cleaning up a thread and
    frees the WLM PB.  The free of the WLM PB occurs in module
    DFSDASS0+0C2C.  The second TCB is initializing and attempts to
    reference the PB_PARENT_MONTKN out of the previously released
    WLM PB.  This results in the ABEND0C4.
    .
    The ABEND0C4 occurs in module DFSCPY00+155C after label
    INIT4100.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED: All IMS V11 ODBM users.                      *
    ****************************************************************
    * PROBLEM DESCRIPTION: ODBM encounters an ABEND0C4 while       *
    *                      referencing a freed WLM PB.             *
    ****************************************************************
    * RECOMMENDATION: INSTALL CORRECTIVE SERVICE FOR APAR/PTF      *
    ****************************************************************
    During cleanup, a TCB frees the WLM PB.  The free occurs in
    DFSDASS0+0C2C.  A second TCB initializes and attempts to
    reference the PB_PARENT_MONTKN out of the previously released
    WLM PB.  This results in an ABEND0C4 in DFSCPY00+155c after
    label INIT4100.
    

Problem conclusion

  • GEN:
    KEYWORDS: OPENTHRD
    
    *** END IMS KEYWORDS ***
    The handling of WLM Performance Blocks is changed so
    that they are no longer obtained and released
    on every PSB schedule.
    
    Eliminate calling WLM to obtain and release PBs for every PSB
    schedule.
    
    Obtain a pool of WLM performance blocks during connection
    to IMS processing for DRA environment.
    
    Threads will claim a PB from the pool during signon
    and only release it at signoff or abnormal thread termination.
    
    IMSAUTH  - add WLM_PBPOOL function code x'84'
             New return codes for WLM_PBPOOL:
             RC  - Meaning
             04    Caller is not under the TCB that issued IDENTIFY.
             08    Dependent Region Directory block not located.
             0C    Region IDENTIFY block not found.
             10    Call made from unsupported region type.
             14    Invalid function request.
             20    Create caller not authorized
             24    Second Create PB Pool is not allowed.
             28    Failed to get storage for DFSWLMPP block.
             2C    WLM Get PB blocks failed for CREATE request.
             40    No PB Pool block was located for ADD request.
             44    ADD request not issued from same TCB as CREATE.
             48    Failed to get storage for ADD PBs request.
             4C    WLM Get PB blocks failed for ADD request.
             60    DELETE caller is not authorized.
    DFSV4200 - add WLM_PBPOOL function, CREATE, ADD and DELETE
             CREATE subfunction - Get PB Pool header, DFSWLMPP.
               Obtain initial pool of PBs. The PBCOUNT is equal
               to min + max thread.
             ADD subfunction - Get additional PBCOUNT PBs
             DELETE subfunction - Delete all PBs and related
               PB pool storage
    DFSAERI0, DFSPRA10 - Add MAXTHD to DFSSSOB IDENTIFY call
    DFSDASD0 - Issue IMSAUTH DELETE during Terminte Identify call
               processing.
    DFSDASI0 - Issue IMSAUTH WLM_PBPOOL CREATE during IDENTIFY
               processing.
               Module is converted to use branch relative.
    DFSDASS0 SIGNON - Claim PB from pool during signon processing.
               If no PBs are available, set signon feedback and
               defer PB claim to PSB schedule.
             SIGNOFF - Return pool PBs to the pool for reuse.
    DFSPINI0 - Check signon feedback for PBs needed and enqueue
               request more PBs to DRA control routine DFSPRRA0.
    DFSDASP0 - Claim PB from pool is needed, set schedule feedback
               if more PBs needed. If no PBs are available from the
               pool, issue DFSWLME call to obtain one.
    DFSAERG0 - Check schedule PSB feedback for PBs needed and
               enqueue request to DRA control.
    DFSDAST0 - Delete WLM PB for ODBA if not obtained
               from the pool
    DFSDTTA0 - Reset flag bits in DFSWLMWK.
    DFSAERA0 - Add routine to issue IMSAUTH ADDPB
    DBFDBF00 - Recompile for DFSSSOB changes to CNBA offset
    DFSDPDIR - Add anchor pointer DPPBPOOL for DFSWLMPP block
    DFSPQE   - Add PQE function to request additional PB pool
    DFSSSOB  - Add MAXTHD= parameter for IDENTIFY function.
               Relocated SSPICNBA.
    DFSTRSOB - Updated SSOB byte trace with codes for PB pool
               diagnostic trace codes.
    DFSWLME  - Add PBPOOL request to obtain a pool of PB from WLM
    DFSWLML  - Add PBPOOL support to delete PB by address
    DFSWLMPP - New macro defines the WLM PB pool blocks.
    

Temporary fix

Comments

  • POSTREQ PM97369
    PINNED P13/09/18 (ATXT) TO ADD POSTREQ PM97369 INFO.
     **** PE13/09/18 PTF IN ERROR. SEE APAR PM97369 FOR DESCRIPTION.
    ×**** PE13/09/19 FIX IN ERROR. SEE APAR PM97369  FOR DESCRIPTION
    

APAR Information

  • APAR number

    PM82486

  • Reported component name

    IMS V11

  • Reported component ID

    5635A0200

  • Reported release

    100

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2013-02-08

  • Closed date

    2013-07-19

  • Last modified date

    2014-10-20

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

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

    UK96007

Modules/Macros

  • DBFDBF00 DFSAERA0 DFSAERG0 DFSAERI0 DFSDASD0 DFSDASI0 DFSDASP0
    DFSDASS0 DFSDAST0 DFSDPDIR DFSDTTA0 DFSPINI0 DFSPRA10 DFSSSOB
    DFSTRSOB DFSV4200 DFSWLME  DFSWLML  DFSWLMPP DFSWLMWK IMSAUTH
    

Fix information

  • Fixed component name

    IMS V11

  • Fixed component ID

    5635A0200

Applicable component levels

  • R100 PSY UK96007

       UP13/07/26 P F307

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":"100","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SSCVRBJ","label":"System Services"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"100","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
20 October 2014