PJ40806: CTL-571 AT CCIOFLIH WITH HEAPCHECK OFF

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

APAR status

  • Closed as program error.

Error description

  • See Problem Summary.
    

Local fix

  • na
    

Problem summary

  • APAR NUMBER:  PJ40806
    PRODUCT:  z/TPF
    FUNCTIONAL AREA:  DEBUG TOOL SUPPORT
    SHIPPED IN PUT:  10
    
    ABSTRACT:
    Upon registering the z/TPF debugger for trace by terminal, a
    CTL-571 (possibly at CCIOFLIH) dump may occur.
    
    PACKAGE CONTENTS:
    Source Segments:
    (C) base/cntl/tpf_app_base.cntl
    (C) base/cntl/tpf_app_base_ux.cntl
    (C) base/rt/cdbtbt.c
    (C) base/rt/cdbuxt.c
    
    Object Only Binaries:
    None.
    
    Configuration Independent Binaries:
    (C) base/lib/libCDB0.so
    (C) base/load/CDB0.so
    (C) base/obj/cdbtbt.o
    
    Support Files:
    base/lst/CDB0.map
    base/lst/cdbtbt.lst
    
    OTHER BINARIES TO BUILD: YES
    (C) <sys>/load/CDBX.so
    (C) <sys>/obj/cdbuxt.o
    (C) <sys>/load/IPAT.so
    (C) <sys>/obj/ipat.o
    
    COMMENTS:
    After registering the z/TPF debugger for trace by terminal the
    following sequence of events occurred for a customer on a
    multi-istream configuration:
    
    IS-1: ECB A executes cnsf.c (COMX).
    IS-1: ECB A locks the socket lock.
    IS-1: cnsf.c calls CNSG with the socket lock held.
    IS-1: ECB A goes through the chk3 (cchook) debugger
    inter-module call hooks.
    IS-1: ECB A enters cudu (ccvage) to test if the debugger should
    be started for the program being entered (CNSG).
    IS-1: ECB A attempts to lock the debugger registration lock in
    CUDUDPLE.
    
    IS-2: ECB B is created as a result of some comms request.
    IS-2: ECB B enters cdbtbt.c (CDB0) to indicate if this ECB is a
    candidate for debugging based on the comms type and available
    debugger registration entries on the system.
    IS-2: ECB B locks the debugger registration lock.
    IS-2: An OSA interrupt occurs.
    IS-2: Interrupt handling attempts to lock the socket lock.
    
    As a result, ECBs A and B are deadlocked resulting in a CTL-571
    dump.
    

Problem conclusion

  • SOLUTION:
    This situation will be prevented with the following code
    changes:
    1) The NODEBUG PAT setting is intended to prevent debugging of
    any program that acquires or is executed while the socket or
    file system locks are held. This is necessary to prevent
    application/debugger deadlock situations as the debugger makes
    TCP/IP and file system calls in the normal course of operation.
    CNSG is marked as NODEBUG in base/cntl/tpf_app_base.cntl to
    prevent CNSG from being debugged.
    2) cdbtbt.c has been updated to mask off interrupts while the
    debugger registration lock is held.
    3) A few other programs were changed to use the NODEBUG PAT
    setting since locks were shown to be held when debugger code
    was called.
    
    COREQS: NO
    None.
    
    MIGRATION CONSIDERATIONS: YES
    User exit changes:
    The tpf_terminal_user_exit user exit in cdbuxt.c is affected by
    the change in segment cdbtbt.c (CDB0).  Since cdbtbt.c now
    masks interrupts, user code in the user exit
    tpf_terminal_user_exit should be examined to ensure that no
    requests for file I/O etc are made.
    
    Build and load process changes:
    The following programs are now marked as NODEBUG in the PAT:
    DYDY, CVBV, CNSD, CTLA, CNSG, CYF1, CMR0, CMR1, CMR2, CMR3,
    CMR4, and UMR0
    
    
    
    BUILD COMMANDS AND INSTRUCTIONS: YES
    #maketpf commands for linux
    maketpf -f CDBX cdbuxt.o
    maketpf -f CDB0 cdbtbt.o
    maketpf -f IPAT
    maketpf CDBX link TPF_VERIFY_LINK_REFS=NO
    maketpf CDB0 link TPF_VERIFY_LINK_REFS=NO
    maketpf CDBX link
    maketpf CDB0 link
    
    UPDATED INFORMATION UNITS: NO
    None.
    
    See your IBM representative if you need additional information.
    
    DOWNLOAD INSTRUCTIONS:
    http://www.ibm.com/software/htp/tpf/maint/maintztpf.html
    
    APAR URL:
    http://www.ibm.com/software/htp/tpf/ztpfmaint/put10/PJ40806.htm
    

Temporary fix

Comments

APAR Information

  • APAR number

    PJ40806

  • Reported component name

    Z/TPF

  • Reported component ID

    5748T1501

  • Reported release

    110

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2012-12-21

  • Closed date

    2013-01-29

  • Last modified date

    2013-01-29

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

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

Fix information

  • Fixed component name

    Z/TPF

  • Fixed component ID

    5748T1501

Applicable component levels

  • R110 PSY

       UP



Rate this page:

(0 users)Average rating

Document information


More support for:

TPF
z/TPF

Software version:

110

Reference #:

PJ40806

Modified date:

2013-01-29

Translate my page

Machine Translation

Content navigation