IBM Support

PM06951: DFHSM0002 CODE X'0D0A' DUE TO DOUBLE FREEMAIN OF TIOA FROM DFHZFRE . TIOA WAS ALREADY FREEMAINED BY DFHZRVS .

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Message DFHSM0002 code x'0D0A' is produced due to a double
    freemain of TIOA storage out of DFHZFRE .
    DFHZFRE is trying to FREEMAIN the TIOA due to field TCTEFMSA
    (TCTTE + x'128') still containing a pointer to this TIOA after
    previously being freemained by DFHZRVS .
    Trace entries showing both FREEMAINs :
    VIO   EVENT TCTTE(0CD3B618) V026N007,010E,RECEIVE,DATA,RQE1,
    ZRVS  ENTRY RECV_SPEC       0CD3B618,B267,ZRVX
    SMMG  ENTRY GETMAIN         451,0CD3B618,NO,00,TERMINAL
    SMMG  EXIT  GETMAIN/OK      0CA778D0
    SMMF  ENTRY FREEMAIN        0C46DB00,0CD3B618
          (R14 pointing into DFHZRVS)
    SMMF  EXIT  FREEMAIN/OK     TERMINAL storage at 0C46DB00
    VIO   EVENT TCTTE(0CD3B618) V026N007,010E,RECEIVE,DATA,RQE1,
    ZRVS  ENTRY RECV_SPEC       0CD3B618,B267,ZRVX
    SMMG  ENTRY GETMAIN         1000,0CD3B618,NO,00,TERMINAL
    SMMG  EXIT  GETMAIN/OK      0D661000
    SMMF  ENTRY FREEMAIN        0CA778D0,0CD3B618
    SMMF  EXIT  FREEMAIN/OK     TERMINAL storage at 0CA778D0
    VIO   EVENT TCTTE(0CD3B618) V026N007,010F,RECEIVE,DATA,RQE1,
    ZRVS  ENTRY RECV_SPEC       0CD3B618,B267,ZRVX
    VIO   EVENT TCTTE(0CD3B618) V026N007,0110,RECEIVE,DATA,RQE1,
    ZFRE  ENTRY FREEMAIN        SPECIFIC 0CD3B618,B267
    SMMF  ENTRY FREEMAIN        0C46DB00,0CD3B618,TERMINAL
          (R14 pointing into DFHZFRE)
    0D0A SMMF  *EXC* Invalid_TP_storage_address
    FREEMAIN,0C46DB00,0CD3B618,TERMINAL
    

Local fix

  • Local Fix not available.
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED: All CICS Users.                              *
    ****************************************************************
    * PROBLEM DESCRIPTION: DFHSM0002 code x'0D0A' is issued after  *
    *                      an EXEC CICS SEND request was issued    *
    *                      from an application's HANDLE ABEND      *
    *                      routine.                                *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    Message DFHSM0002, code x'0D0A' may occur after an application
    program issues a further terminal control request following
    abendATCH, which resulted from a user PURGE of a task waiting
    for completion of an earlier terminal control request.
    An application has issued a RECEIVE command, and while in a
    ZCIOWAIT the task is PURGEd by the user. This returns an abend
    ATCH to the application. An abend exit routine is called and
    issues a SEND command. The SEND is deferred by CICS but the
    address of the TIOA is saved in field TCTECDSV, this is the same
    TIOA that was used for the earlier RECEIVE request which is
    still active to VTAM.
    Later on some data is received from the terminal, and VTAM
    stores this data at the address of the TIOA, and then drives
    DFHZRVX, the CICS RECEIVE SPECFIC exit. The data is too large to
    fit in the TIOA, so DFHZRVS GETMAINs a new larger TIOA and
    FREEMAINs the old TIOA. The overlength data is chained, and
    DFHZRVS issues repeated RECEIVE SPECIFIC requests until the Last
    In Chain LIC data is received. When DFHZRVX is driven for the
    LIC data it checks to see if any now redundant TIOA storage
    should be FREEMAINed. TCTECDSV contains the original TIOA
    address saved by DFHZARQ, so DFHZRVX schedules a FREEMAIN
    SPECIFIC request placing the address of the TIOA in TCTEFMSA.
    When DFHZFRE runs to process the request it attempts to FREEMAIN
    the TIOA storage for a second time, resulting in the reported
    DFHSM0002 error.
    
    Additional keywords: PQ37557 TCTECDSY code x'0D05'
    

Problem conclusion

  • DFHZARQ has been altered so that terminal control requests
    cannot be made by a task that has been PURGEd while processing
    a terminal control request. If a further terminal control
    request is made by the application after abend ATCH then a new
    abend ATNC will be issued. This will prevent CICS from
    attempting to process a terminal control request when the
    control blocks or the session are in an unpredictable state.
    
    CICS Transaction Server for VSE/ESA, CICS Data Areas,
    LY33-6086-01, will have the description of the TCTTE control
    block updated.
    
    The byte at offset X'C0' in the TCTTE will have the following
    bit definition added:
    
         Type          Name          Description
         ...1 ....     TCTEPABP      Purge abend pending
    
    CICS Transaction Server for VSE/ESA, Messages and Codes Release
    1, GC34-5561-08, in Chapter 2 - "Transaction abend codes", will
    have the new abend code ATNC added in alphabetical sequence.
    
    ATNC
    
    EXPLANATION:  The application program has issued a
    terminal control request for a terminal for which a previous
    request was terminated with an abend ATCH, because the task
    was purged. The terminal control blocks are not in a
    fit state to allow a new request to be processed.
    
    SYSTEM ACTION:  The task is abnormally terminated with a
    CICS transaction dump.
    
    USER RESPONSE:  Change the application program to issue an
    abend when handling an abend ATCH.
    
    MODULE:  DFHZARQ
    
    CICS Transaction Server for VSE/ESA, User's Handbook,
    SX33-6101-00, in Chapter 9 - "Transaction abend codes", will
    have the new abend code ATNC added in alphabetical sequence.
    
    Abend      Module          Explanation
    ATNC       DFHZARQ         TC request made after abend ATCH
    

Temporary fix

  • FIX AVAILABLE BY PTF ONLY
    

Comments

APAR Information

  • APAR number

    PM06951

  • Reported component name

    CICSTS FOR VSE

  • Reported component ID

    564805400

  • Reported release

    B0P

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2010-02-08

  • Closed date

    2010-05-27

  • Last modified date

    2010-11-04

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

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

    UK57401

Modules/Macros

  •    DFHBSZZ  DFHTCPCM DFHTCTTE DFHTCTZE DFHZARQ
    DFHZCLS  DFHZCLX  DFHZDET  DFHZEMW  DFHZISP
    

Publications Referenced
GC34556108SX33610100LY33608601  

Fix information

  • Fixed component name

    CICSTS FOR VSE

  • Fixed component ID

    564805400

Applicable component levels

  • RB0P PSY UK57401

       UP10/05/28 P E430

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":"BU011","label":"Systems - zSystems software"},"Product":{"code":"SSGMGV","label":"CICS Transaction Server"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"1.1.1","Edition":""}]

Document Information

Modified date:
04 November 2010