CHPBK - 64-bit CP - V4R4.0

Programming Interface Information: This information is NOT intended to be used as Programming Interfaces of z/VM.

#### CHPBK

Prolog

Control Block Contents
CHPBK DSECT

Storage Layout

Cross Reference (Contains links to field and bit definitions)

#### CHPBK Prolog

     NAME       : HCPCHPBK
     DESCRIPTION: SPXTAPE Channel Program Block
     DSECT      : CHPBK
     FUNCTION   : Work area to hold a channel program and
                  the resources needed (including an
                  IORBK) to issue an SPXTAPE tape I/O
                  request and handle the completion or
                  recovery procedures.
     LOCATED BY :
                  Routines:
                  HCPSPYWT - to set up the I/O operation
                  HCPSPYWI - interrupt processing
                  HCPSPZRT - to set up the I/O operation
                  HCPSPZRI - interrupt processing
                  Control block fields:
                  TAPCHPQ  - head of queue in the TAPBK
                  CHPNEXT  - next in circular queue
     CREATED BY : HCPSPYWT - SPXTAPE DUMP commands
                  HCPSPZRT - SPXTAPE LOAD and SCAN commands
     DELETED BY : HCPSPYWT - SPXTAPE DUMP commands
                  HCPSPZRT - SPXTAPE LOAD and SCAN commands
     References : HCPCHPBK requires HCPIORBK COPY

#### CHPBK Control Block Content

#### CHPBK DSECT

    Hex   Dec Type/Val   Lng Label (dup)    Comments
    ---- ---- --------- ---- -------------- --------
    0000    0 Structure      CHPBK          SPXTAPE Channel Program Block
         Reserve space for the base IORBK
    0000    0 Dbl-Word     8 CHPIORBK (57)  Base IORBK region
         Lock for this IORBK and CHPBK work area
    01C8  456 Dbl-Word     8 CHPLOCK (3)    Lock to serialize this block
         Commit and recovery control data. Last items in the current block used
         to update commit cursors when successfully sent to tape.
    01E0  480 Signed       2 CHPCMCLR (0)   Beginning of area to be cleared
                                            before reuse for trailer
    01E0  480 Address      4 CHPCURTK       Last ticket contained in current
                                            block
    01E4  484 Address      4 CHPCMSSQ       Last SSQBK
    01E8  488 Address      4 CHPCMCUR       Address of next Vpage slot in
                                            last SSQBK
    01EC  492 Signed       4 CHPCURHD       Displacement in header of cur hdr
    01F0  496 Signed       4 CHPCMXAB       Amt of XAB data associated with
                                            last tkt remaining to be written
    01F4  500 Address      4 CHPLSTCW       CCW address of the last piece of
                                            data for files that completed in
                                            the current block. If = 0 then
                                            block contains no complete files
    01F8  504 Signed       4 CHPLLPTR       Last offset in page list +1 used
    01FC  508 Address      4 CHPLSTHD       Hdr addr for last completed file
    0200  512 Signed       4 CHPLBLKZ       Save last block size at last
                                            complete file/tkt in this block.
         Counters, etc.
    0204  516 Character   16 CHPTKTS        Queue of files completed in this
                                            channel program. Moved to TAPTKTQ
                                            when I/O completes OK.
                                            Single-threaded double-headed
                                            FIFO queue terminated by zero
    0204  516 Address      4 CHPTKTSH       Head of CHPTKTS
    0208  520 Address      4 CHPTKTST       Tail of CHPTKTS
    020C  524 Signed       4 CHPTKTCT       Corresponding count of files on
                                            CHPTKTS
    0210  528 Signed       4 *              Reserved
    0214  532 Signed       4 CHPENTRY       Current entry in the header
    0218  536 Signed       4 CHPLIMIT       After the last entry in the hdr
    021C  540 Signed       4 CHPLINDX       Index into CCW list of buffers
    0220  544 Signed       4 CHPOFFST       Offset into block where data
                                            should be added
    0224  548 Signed       4 *
    0228  552 Signed       4 CHPPOOLC       Count of pool pages (data pages)
    022C  556 Address      4 CHPPLIST (14)  List of pages locked for this blk
              00000038       CHPPLLEN       *-CHPPLIST Length to clear
              0000000E       CHPPLMAX       14 Maximum number of entries
    0264  612 Signed       4 *              End flag for PLIST - zero = end
              00000088       CHPCMCRL       *-CHPCMCLR Length of area to be
                                            cleared before reuse for trailer
         Queue of CHPbks link field
    0268  616 Address      4 CHPNEXT        Next work area in circular queue
         Save area across GOTO I/O request
    026C  620 Signed       4 CHPSAVE (7)    Save R3-R9 across call to IOS.QS
         Channel Program and Header Block copied from TAPBK
    0288  648 Dbl-Word     8 CHPPGM (26)    Modeset + hdr + 3*8 (desc + xab +
                                            data)
    0358  856 Dbl-Word     8 CHPHEADR (37)  Block header
         End of CHPBK definition
    0480 1152 Dbl-Word     8 CHPRESVD (12)  Round it off
              00000318       CHPLENBY       *-CHPLOCK Extra space (after
                                            IORBK)
              000004E0       CHPIOBY        *-CHPBK Whole work area size in
                                            bytes
              0000009C       CHPIODW        CHPIOBY/8 Same in double words
              00000002       CHPBKCNT       2 Number of work areas per drive
         Redefinition for the channel program build area
    0288  648 Dbl-Word     8 CHPMSCCW       Modeset, if applicable
    0290  656 Address      4 CHPHDCCW       Read/write header CCW
    0294  660 Address      4 CHPHCCWA       Address of the CHPHEADR
    0298  664 Address      4 CHPCCW1        First general CCW
    029C  668 Address      4 CHPCCW1A       Address section for deblocking
    02A0  672 Dbl-Word     8 CHPCCWS (20)   File write CCWs - desc, XAB, data
                                            Or read CCW's - up to 8 pages
              000000B8       CHPPGMLN       *-CHPPGM Must match size defined
                                            above
         Redefinition for the tape block header section
    0358  856 Character    4 CHPBLKID       Generally 'XHDR', could be 'TRLR'
    035C  860 Signed       4 CHPBLKSZ       Size of this block in bytes
    0360  864 Dbl-Word     8 CHPTIME        Time stamp
         Definition of an individual entry
    0368  872 Dbl-Word     8 CHPHDENT (0)   Start of the first entry
    0368  872 Character    8 CHPOWNER       File owner
    0370  880 Signed       4 CHPFSEQ        File sequence number for drive
    0374  884 Signed       4 CHPSYSID       System spool file ID when dumped
    0378  888 Signed       2 CHPSPID        User spool file ID when dumped
    037A  890 Bitstring    1 CHPHDFLG       Flags describing file section
    037B  891 Bitstring    1 *
    037C  892 Signed       4 CHPMAPCT       Count of map pages needed for
                                            file
    0380  896 Signed       4 CHPPAGNO       Starting relative page number
    0384  900 Signed       2 CHPPAGCT       Count of data pages in block
    0386  902 Signed       2 CHPXABSZ       Size of XAB section in block
    0388  904 Signed       2 CHPTKOFF       Offset to ticket - file
                                            descriptor
    038A  906 Signed       2 CHPXAOFF       Offset to extended attributes buf
    038C  908 Signed       2 CHPDPOFF       Offset to data pages
    038E  910 Signed       2 *

#### CHPBK Storage Layout

    *** CHPBK - SPXTAPE Channel Program Block
    *
    *     +-------------------------------------------------------+
    *   0 |                                                       |
    *     =                       CHPIORBK                        =
    *     |                                                       |
    *     +-------------------------------------------------------+
    * 1C8 |                                                       |
    *     =                       CHPLOCK                         =
    *     |                                                       |
    *     +---------------------------+---------------------------+
    * 1E0 |         CHPCURTK          |         CHPCMSSQ          |
    *     +---------------------------+---------------------------+
    * 1E8 |         CHPCMCUR          |         CHPCURHD          |
    *     +---------------------------+---------------------------+
    * 1F0 |         CHPCMXAB          |         CHPLSTCW          |
    *     +---------------------------+---------------------------+
    * 1F8 |         CHPLLPTR          |         CHPLSTHD          |
    *     +---------------------------+---------------------------+
    * 200 |         CHPLBLKZ          |                           |
    *     +---------------------------+                           |
    *     |                       CHPTKTS                         |
    *     |                           +---------------------------+
    *     |                           | 214
    *     +---------------------------+
    *
    *** CHPBK - SPXTAPE Channel Program Block

    *** Overlay for CHPTKTS in CHPBK
    *
    *                                 +---------------------------+
    * 200 ...                     204 |         CHPTKTSH          |
    *     +---------------------------+---------------------------+
    * 208 |         CHPTKTST          |         CHPTKTCT          |
    *     +---------------------------+---------------------------+
    * 210 |///////////////////////////|         CHPENTRY          |
    *     +---------------------------+---------------------------+
    * 218 |         CHPLIMIT          |         CHPLINDX          |
    *     +---------------------------+---------------------------+
    * 220 |         CHPOFFST          |///////////////////////////|
    *     +---------------------------+---------------------------+
    * 228 |         CHPPOOLC          |                           |
    *     +---------------------------+                           |
    * 230 |                                                       |
    *     =                       CHPPLIST                        =
    *     |                           +---------------------------+
    * 260 |                           |///////////////////////////|
    *     +---------------------------+---------------------------+
    * 268 |         CHPNEXT           |                           |
    *     +---------------------------+                           |
    * 270 |                                                       |
    *     =                       CHPSAVE                         =
    *     |                                                       |
    *     +-------------------------------------------------------+
    * 288 |                                                       |
    *     =                        CHPPGM                         =
    *     |                                                       |
    *     +-------------------------------------------------------+
    * 358 |                                                       |
    *     =                       CHPHEADR                        =
    *     |                                                       |
    *     +-------------------------------------------------------+
    * 480 |                                                       |
    *     =                       CHPRESVD                        =
    *     |                                                       |
    *     +-------------------------------------------------------+
    * 4E0
    *
    *** Overlay for CHPTKTS in CHPBK

    *** Overlay for CHPPGM in CHPBK
    *
    *     +-------------------------------------------------------+
    * 288 |                       CHPMSCCW                        |
    *     +---------------------------+---------------------------+
    * 290 |         CHPHDCCW          |         CHPHCCWA          |
    *     +---------------------------+---------------------------+
    * 298 |         CHPCCW1           |         CHPCCW1A          |
    *     +---------------------------+---------------------------+
    * 2A0 |                                                       |
    *     =                       CHPCCWS                         =
    *     |                                                       |
    *     +-------------------------------------------------------+
    * 340
    *
    *** Overlay for CHPPGM in CHPBK

    *** Overlay for CHPHEADR in CHPBK
    *
    *     +---------------------------+---------------------------+
    * 358 |         CHPBLKID          |         CHPBLKSZ          |
    *     +---------------------------+---------------------------+
    * 360 |                       CHPTIME                         |
    *     +-------------------------------------------------------+
    * 368 |                       CHPOWNER                        |
    *     +---------------------------+---------------------------+
    * 370 |         CHPFSEQ           |         CHPSYSID          |
    *     +-------------+------+------+---------------------------+
    * 378 |  CHPSPID    |:HDFLG|//////|         CHPMAPCT          |
    *     +-------------+------+------+-------------+-------------+
    * 380 |         CHPPAGNO          |  CHPPAGCT   |  CHPXABSZ   |
    *     +-------------+-------------+-------------+-------------+
    * 388 |  CHPTKOFF   |  CHPXAOFF   |  CHPDPOFF   |/////////////|
    *     +-------------+-------------+-------------+-------------+
    * 390
    *
    *** Overlay for CHPHEADR in CHPBK

#### CHPBK Cross Reference

    Symbol         Dspl Value
    -------------- ---- -----
    CHPBKCNT       0480 00000002
    CHPBLKID       0358
    CHPBLKSZ       035C
    CHPCCWS        02A0
    CHPCCW1        0298
    CHPCCW1A       029C
    CHPCMCLR       01E0
    CHPCMCRL       0264 00000088
    CHPCMCUR       01E8
    CHPCMSSQ       01E4
    CHPCMXAB       01F0
    CHPCURHD       01EC
    CHPCURTK       01E0
    CHPDPOFF       038C
    CHPENTRY       0214
    CHPFSEQ        0370
    CHPHCCWA       0294
    CHPHDCCW       0290
    CHPHDENT       0368
    CHPHDFLG       037A
    CHPHEADR       0358
    CHPIOBY        0480 000004E0
    CHPIODW        0480 0000009C
    CHPIORBK       0000
    CHPLBLKZ       0200
    CHPLENBY       0480 00000318
    CHPLIMIT       0218
    CHPLINDX       021C
    CHPLLPTR       01F8
    CHPLOCK        01C8
    CHPLSTCW       01F4
    CHPLSTHD       01FC
    CHPMAPCT       037C
    CHPMSCCW       0288
    CHPNEXT        0268
    CHPOFFST       0220
    CHPOWNER       0368
    CHPPAGCT       0384
    CHPPAGNO       0380
    CHPPGM         0288
    CHPPGMLN       02A0 000000B8
    CHPPLIST       022C
    CHPPLLEN       022C 00000038
    CHPPLMAX       022C 0000000E
    CHPPOOLC       0228
    CHPRESVD       0480
    CHPSAVE        026C
    CHPSPID        0378
    CHPSYSID       0374
    CHPTIME        0360
    CHPTKOFF       0388
    CHPTKTCT       020C
    CHPTKTS        0204
    CHPTKTSH       0204
    CHPTKTST       0208
    CHPXABSZ       0386
    CHPXAOFF       038A

This information is based on z/VM V4R4.0. Last updated on 30 Jul 2003 at 12:32:34 EDT.
Copyright IBM Corporation, 1990, 2003