IBM Support

PM12402: CSL3117E SVC ABEND S0C4 MEMBER RB1MA7NB PSW=074C0000 A3DE69E4 RSN=00000004 CSLSRG20=23DE5D68 REG PROC

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Environment: Z/OS 1.10 - IMS V10
    Shared Queue two way - 2 IMS members MS1DCTL and MS2DCTL
    (control
    region), MS1DCSLS and MS2DCLSL (sci task)
    Problem description:
    - on day 201080 - 01:41:18 - user issued the command //DIS TRAN
    IL01
      under Mainview Plex product on LPAR SECA (task MVPLEX)
    - at this time only MS1DCTL member was active
    - the //DIS TRAN command was not executed successfully
    - at 2010080 01:41:18.43 this msg was issued:
      CSL3117E SVC ABEND S0C4  MEMBER RB1MA7NB PSW=074C0000 A3DE69E4
                       RSN=00000004 CSLSRG20=23DE5D68  REG PROC
    - at 2010080 01:41:21.34 :
      CSL3117E SVC ABEND S0C4  MEMBER RB1MA7NB PSW=070C2000 814992A4
              RSN=00000004 CSLSRG20=23DE5D68   CLEANUP
      DUMPID=002 REQUESTED BY JOB (MVPLEX  )
    - after that many 0C4 abends were reported at CLS task
    (MS1DCSLS)
      DIAG=4004000184 (RETRYING)
    - on Wednesday as this task was filling spool, the customer
    brought down
      this task, but didn't get to bring it up again. The 0C4 abend
    persisted
      and the SCI didn't stay active.
    - At this night the customer brought down all IMS members in
    this Shared
      group and also did cold start in the  Shared Queue structure,
    but again
      the SCI task didn't stay up.
    - What happened in customers case is that the CMBR
    storage was freed, but then a second registration
    came along and just happened to get the same
    storage again.  The PMBR already pointed to the CMBR
    from the first registration. Now when the same  CMBR
    was chained in for the second registration, it got
    chained to itself, creating a looped CMBR chain off
    of the PMBR.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:   All IMS V11 SCI users.                     *
    ****************************************************************
    * PROBLEM DESCRIPTION:   ABEND0C4 in CSLSTOA0.                 *
    *                                                              *
    *                        ABEND0C4 in CSLSPLR0.                 *
    *                                                              *
    *                        CMBR chain points to storage that     *
    *                        has been released.                    *
    ****************************************************************
    * RECOMMENDATION: INSTALL CORRECTIVE SERVICE FOR APAR/PTF      *
    ****************************************************************
        SCI does not support an address space registering multiple
      times using different keys, but it does not check for this
      during registration.  When an address space tries to register
      a second time using a different key than the first
      registration, an abend is encountered in CSLSRG20.  When
      CSLSRG20 tries to clean up by deleting the storage obtained
      for the new registration, two additional ABEND0C4 abends
      are encountered due to coding errors in the cleanup code.
    
        The first abend occurs when SCI attempts to delete the input
      exit cell pool.  Before deleting the cell pool, it switches to
      the key saved in the CMBR block (which matches the key of the
      first registration).  However, the cell pool was obtained
      using the caller's key, which in this case is different.  This
      results in an ABEND0C4.
    
        The second abend occurs when SCI attempts to return a cell
      to the registration cell pool.  Before it frees the cell, the
      pointer to the cell is zeroed out (to ensure that this is not
      repeated).  This results in an ABEND0C4 when the CPOOL service
      tries to return a cell at location x'00'.
    
        Because of the way the code is structured, the second abend
      results in bypassing the code that unchains the CMBR block
      from the the CMBR blocks under a particular PMBR.  Instead of
      executing that code, it goes directly to the code that
      releases the CMBR, even though the CMBR is still on an active
      chain.
    
        The above scenario results in a CMBR chain that points to
      storage that has been released.  When this storage is reused,
      it will eventually result in multiple ABEND0C4 abends when SCI
      modules attempt to process all the CMBR blocks by follwing the
      CMBR chain.
    

Problem conclusion

  • GEN:
    KEYWORDS:
    
    *** END IMS KEYWORDS ***
        A new registration error reason code is added to CSLSRG20.
      This reason code is returned when the key of a subsequent
      registration from an address space does not match the key from
      the first registration from that address space.
    
        The errors in the cleanup subroutine are fixed.
    
    
        SCI Macro Changed
        ==================
    
        CSLSRR
          A new reason code is added : SRSN_WRONGKEY.  This reason
          code is returned when the key does not match the key of
          the first registration from the address space.
    
        SCI Module Changed
        ==================
    
        CSLSRG20
          A check is added to ensure that the key matches the key
          of the first registration from this address space (if
          multiple registrations).  If the keys don't match, the
          registration is rejected with a return code of SC_ENVIRON
          and reason code of SRSN_WRONGKEY.
    
          The registration cell return is pulled into its own
          if-then-else clause.  The pointer to the cell is
          saved before the CMBR cell pointer is cleared.  The
          saved pointer is used in the CPOOL (FREE) service.
    
    
    
    
      The following publication updates are made by this APAR:
    
    
      IMS Version 11: System Programming API Reference
                      SC19-2445
    
    
        In chapter 8 (Writing a CSL SCI Client), add the following
      paragraph in the CSLSCREG section.  Add it following the
      paragraph describing the SYSEVENT DONTSWAP restriction:
    
      Restriction: One address space may register multiple times
      with SCI.  However, all registrations from one address
      space must be made while running in the same PSW key and
      state (supervisor or problem) as the first registration
      made in the address space.
    
    
        Add the following entry to table 68 (CSLSCREG return
      and reason codes):
    
    
      Return Code    Reason Code    Meaning
    
      x'01000010'    x'0000402C'    Caller key does not match key
                                     of existing registration or
                                     state (supervisor or problem)
                                     does not match state of
                                     existing registration.
    

Temporary fix

  • *********
    * HIPER *
    *********
    

Comments

APAR Information

  • APAR number

    PM12402

  • Reported component name

    IMS V11

  • Reported component ID

    5635A0200

  • Reported release

    100

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    YesHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2010-04-15

  • Closed date

    2010-09-02

  • Last modified date

    2010-10-02

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

    PM11027

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

    UK60321

Modules/Macros

  • CSLSRG20 CSLSRR
    

Publications Referenced
SC19244501    

Fix information

  • Fixed component name

    IMS V11

  • Fixed component ID

    5635A0200

Applicable component levels

  • R100 PSY UK60321

       UP10/09/14 P F009 Ž

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:
02 October 2010