IBM Support

PI97025: DFHMQ0370 DFHMQMON DFHMQERR REGISTER 13 CSA RSA

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • The customer received the following messages
    .
    DFHMQ0370 MQMONITORS ARE CURRENTLY RESTRICTED
            TO 60 MQGETS PER SECOND.
    DFHMN0115I CICS SERVER Z/OS WLM HEALTH PERCENTAGE IS NOW 25.
    DFHKE0201  ABOUT TO TAKE SDUMP.  DUMPCODE: KERNDUMP
    +.........EBDAA10....".0.".0.".0.".0.".0.".0
    BPXP018I ... ENDED WITHOUT BEING UNDUBBED
    .
    The BPX message indicates that CICS terminated abnormally
    without being able to shutdown any processes.
    .
      The KE Error Table in the dump showed the following error:
    .
    Error for KE_NUM: 0068  Task Num: 00037
    Error Code: 0C4/AKEA   Error Type: PROGRAM CHECK
    CICS Error Instruction Address in Module DFHKELRA +x'0232'
        Instruction Length: 6
        Interrupt Code: 0010
        Exception Address: 3E2B2400
    CICS Registers:
    R0:  1E1FE000  Trace Domain Anchor Block + X'0'
    R1:  211D0C00  KE STACK Entry
    R2:  1EC04788_1EC05788  Storage invalid
    R3:  211D04B0  KE STACK Entry
    R4:  1F6AD000  Kernel Task Entry  + X'0'
        for TaskNum=0066 TranNum=00039
    R5:  1ED29A5E  Module DFHZCX + X'55E'
    R6:  9ED29BA8  Module DFHZCX + X'6A8'
    R7:  211D04B0  KE STACK Entry
    R8:  1ED2AA5E  Module DFHZCX + X'155E'
    R9:  00000100
    R10: 00000000
    R11: 1ED2BA5E  Module DFHZCX + X'255E'
    R12: 1E3DE800  Task 00039 User TCA + X'0'
    R13: 00041800  Module DFHCSA + X'800'
    R14: 9ED2B6D4  Module DFHZCX + X'21D4'
    R15: 1F6AD018  Kernel Task Entry  + X'18'
        for TaskNum=0066 TranNum=00039
    .
      The error was for TASK#37 on KE#68,
    but the registers were for TASK#39 on KE#66
      While the program check was in module DFHKELRA
    the System Trace showed that the SVC13 (SVCD SVC D 13)
    was issued by module DFHZLOC.
      The CICS internal trace showed Task#37 in MQ processing.
    The return registers pointed into module DFHMQMON in
    proc(csErrMsgParm) where it called module DFHMQERR.
      Task #39 include terminal processing
    .
      DFHMQMON changes Register 13 to point at either the CSA
    or the DFHEISTG.  It enters the proc Process_mqmonitors
    which is new in 5.4, dealing with WLM Health.
      That proc switches R13 to point to the CSA
    and makes some domain calls.
      It then does the call to MsgRtn which calls DFHMQERR,
    with R13 pointing to the CSA. This is the problem.
      DFHMQERR saves his caller's registers
    using the caller's R13 - the CSA.
      It then acquires DFHEISTG storage
    and follows a similar pattern of swapping R13.
    Then it does a domain call,
    which leads to the task being suspended.
      Task 39 resumes processing and picks up Task 37's registers
    from the CSA.  DFHZLOC does a BASR to DFHKELRA,
    which program-checks because it is running
    with the wrong set of registers.
      While the problem was in DFHZLOC & DFHKELRA this time,
    the error could happen to any program that picks up the
    wrong registers.  So, the symptoms of this error
    could be unpredicable results.
    .
    Additional Symptom(s) Search Keyword(s): KIXREVxxx
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED: All CICS users                               *
    ****************************************************************
    * PROBLEM DESCRIPTION: Abend S0C4 due to invalid registers     *
    *                      restored from DFHMQMON                  *
    ****************************************************************
    CICS starts up with MQCONN=YES and begins to activate a
    connection to MQ.
    The code in DFHMQMON calls DFHMQERR with R13 pointing
    incorrectly to the CSA.
    This causes a misuse of the CSA's Register Save Area which can
    lead to unpredictable results if the CSA RSA is used by another
    task.
    It is possible that DFHMQMON will abend because it has picked
    up another task's registers.
    It is possible that any task which picks up DFHMQMON's
    registers will abend.
    Additional Keywords: STARTUP DFHMQ0370 MSGDFHMQ0370
                         Process_Mqmonitors Msg_Rtn WLM HEALTH
    

Problem conclusion

  • DFHMQMON has been changed to point R13 to the correct
    register save area.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PI97025

  • 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

    2018-04-20

  • Closed date

    2018-06-26

  • Last modified date

    2018-07-02

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

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

    UI56839

Modules/Macros

  • DFHMQMON
    

Fix information

  • Fixed component name

    CICS TS Z/OS V5

  • Fixed component ID

    5655Y0400

Applicable component levels

  • R100 PSY UI56839

       UP18/06/27 P F806

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":"5.4","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":"5.4","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
02 July 2018