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 (59)  Base IORBK region
            Lock for this IORBK and CHPBK work area
    01D8  472 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.
    01F0  496 Signed       2 CHPCMCLR (0)   Beginning of area to be cleared
                                            before reuse for trailer
    01F0  496 Address      4 CHPCURTK       Last ticket contained in current
                                            block
    01F4  500 Address      4 CHPCMSSQ       Last SSQBK
    01F8  504 Address      4 CHPCMCUR       Address of next Vpage slot in
                                            last SSQBK
    01FC  508 Signed       4 CHPCURHD       Displacement in header of cur hdr
    0200  512 Signed       4 CHPCMXAB       Amt of XAB data associated with
                                            last tkt remaining to be written
    0204  516 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
    0208  520 Signed       4 CHPLLPTR       Last offset in page list +1 used
    020C  524 Address      4 CHPLSTHD       Hdr addr for last completed file
    0210  528 Signed       4 CHPLBLKZ       Save last block size at last
                                            complete file/tkt in this block.
            Counters, etc.
    0214  532 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
    0214  532 Address      4 CHPTKTSH       Head of CHPTKTS
    0218  536 Address      4 CHPTKTST       Tail of CHPTKTS
    021C  540 Signed       4 CHPTKTCT       Corresponding count of files on
                                            CHPTKTS
    0220  544 Signed       4 *              Reserved
    0224  548 Signed       4 CHPENTRY       Current entry in the header
    0228  552 Signed       4 CHPLIMIT       After the last entry in the hdr
    022C  556 Signed       4 CHPLINDX       Index into CCW list of buffers
    0230  560 Signed       4 CHPOFFST       Offset into block where data
                                            should be added
    0234  564 Signed       4 *
    0238  568 Signed       4 CHPPOOLC       Count of pool pages (data pages)
    023C  572 Address      4 CHPPLIST (14)  List of pages locked for this blk
              00000038       CHPPLLEN       *-CHPPLIST Length to clear
              0000000E       CHPPLMAX       14 Maximum number of entries
    0274  628 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
    0278  632 Address      4 CHPNEXT        Next work area in circular queue
            Save area across GOTO I/O request
    027C  636 Signed       4 CHPSAVE (7)    Save R3-R9 across call to IOS.QS
            Channel Program and Header Block copied from TAPBK
    0298  664 Dbl-Word     8 CHPPGM (26)    Modeset + hdr + 3*8 (desc + xab +
                                            data)
    0368  872 Dbl-Word     8 CHPHEADR (37)  Block header
            Pointers
    0490 1168 Signed       4 CHPIDAWA       IDAW list anchor
    0494 1172 Signed       4 CHPIDWNX       Next available IDAW slot
    0498 1176 Signed       4 CHPBUFHL       Host logical buffer addr anchor
    049C 1180 Signed       4 *              Reserved
              00000004       CHPHLLEN       4 Length of CHPBUFHL entries
            End of CHPBK definition
    04A0 1184 Dbl-Word     8 CHPRESVD (10)  Round it off
              00000318       CHPLENBY       *-CHPLOCK Extra space (after
                                            IORBK)
              000004F0       CHPIOBY        *-CHPBK Whole work area size in
                                            bytes
              0000009E       CHPIODW        CHPIOBY/8 Same in double words
              00000002       CHPBKCNT       2 Number of work areas per drive
            Redefinition for the channel program build area
    0298  664 Dbl-Word     8 CHPMSCCW       Modeset, if applicable
    02A0  672 Address      4 CHPHDCCW       Read/write header CCW
    02A4  676 Address      4 CHPHCCWA       Address of the CHPHEADR
    02A8  680 Address      4 CHPCCW1        First general CCW
    02AC  684 Address      4 CHPCCW1A       Address section for deblocking
    02B0  688 Dbl-Word     8 CHPCCWS (20)   File write CCWs - desc, XAB, data
                                            Or read CCW's - up to 8 pages
              00000015       CHPCCWCT       (*-CHPCCW1)/8 Number of CCWs
                                            (doublewords)
              000000B8       CHPPGMLN       *-CHPPGM Must match size defined
                                            above
            Redefinition for the tape block header section
    0368  872 Character    4 CHPBLKID       Generally 'XHDR', could be 'TRLR'
    036C  876 Signed       4 CHPBLKSZ       Size of this block in bytes
    0370  880 Dbl-Word     8 CHPTIME        Time stamp
            Definition of an individual entry
    0378  888 Dbl-Word     8 CHPHDENT (0)   Start of the first entry
    0378  888 Character    8 CHPOWNER       File owner
    0380  896 Signed       4 CHPFSEQ        File sequence number for drive
    0384  900 Signed       4 CHPSYSID       System spool file ID when dumped
    0388  904 Signed       2 CHPSPID        User spool file ID when dumped
    038A  906 Bitstring    1 CHPHDFLG       Flags describing file section
    038B  907 Bitstring    1 *
    038C  908 Signed       4 CHPMAPCT       Count of map pages needed for
                                            file
    0390  912 Signed       4 CHPPAGNO       Starting relative page number
    0394  916 Signed       2 CHPPAGCT       Count of data pages in block
    0396  918 Signed       2 CHPXABSZ       Size of XAB section in block
    0398  920 Signed       2 CHPTKOFF       Offset to ticket - file
                                            descriptor
    039A  922 Signed       2 CHPXAOFF       Offset to extended attributes buf
    039C  924 Signed       2 CHPDPOFF       Offset to data pages
    039E  926 Signed       2 *

#### CHPBK Storage Layout

    *** CHPBK - SPXTAPE Channel Program Block
    *
    *     +-------------------------------------------------------+
    *   0 |                                                       |
    *     =                       CHPIORBK                        =
    *     |                                                       |
    *     +-------------------------------------------------------+
    * 1D8 |                                                       |
    *     =                       CHPLOCK                         =
    *     |                                                       |
    *     +---------------------------+---------------------------+
    * 1F0 |         CHPCURTK          |         CHPCMSSQ          |
    *     +---------------------------+---------------------------+
    * 1F8 |         CHPCMCUR          |         CHPCURHD          |
    *     +---------------------------+---------------------------+
    * 200 |         CHPCMXAB          |         CHPLSTCW          |
    *     +---------------------------+---------------------------+
    * 208 |         CHPLLPTR          |         CHPLSTHD          |
    *     +---------------------------+---------------------------+
    * 210 |         CHPLBLKZ          |                           |
    *     +---------------------------+                           |
    *     |                       CHPTKTS                         |
    *     |                           +---------------------------+
    *     |                           | 224
    *     +---------------------------+
    *
    *** CHPBK - SPXTAPE Channel Program Block

    *** Overlay for CHPTKTS in CHPBK
    *
    *                                 +---------------------------+
    * 210 ...                     214 |         CHPTKTSH          |
    *     +---------------------------+---------------------------+
    * 218 |         CHPTKTST          |         CHPTKTCT          |
    *     +---------------------------+---------------------------+
    * 220 |///////////////////////////|         CHPENTRY          |
    *     +---------------------------+---------------------------+
    * 228 |         CHPLIMIT          |         CHPLINDX          |
    *     +---------------------------+---------------------------+
    * 230 |         CHPOFFST          |///////////////////////////|
    *     +---------------------------+---------------------------+
    * 238 |         CHPPOOLC          |                           |
    *     +---------------------------+                           |
    * 240 |                                                       |
    *     =                       CHPPLIST                        =
    *     |                           +---------------------------+
    * 270 |                           |///////////////////////////|
    *     +---------------------------+---------------------------+
    * 278 |         CHPNEXT           |                           |
    *     +---------------------------+                           |
    * 280 |                                                       |
    *     =                       CHPSAVE                         =
    *     |                                                       |
    *     +-------------------------------------------------------+
    * 298 |                                                       |
    *     =                        CHPPGM                         =
    *     |                                                       |
    *     +-------------------------------------------------------+
    * 368 |                                                       |
    *     =                       CHPHEADR                        =
    *     |                                                       |
    *     +---------------------------+---------------------------+
    * 490 |         CHPIDAWA          |         CHPIDWNX          |
    *     +---------------------------+---------------------------+
    * 498 |         CHPBUFHL          |///////////////////////////|
    *     +---------------------------+---------------------------+
    * 4A0 |                                                       |
    *     =                       CHPRESVD                        =
    *     |                                                       |
    *     +-------------------------------------------------------+
    * 4F0
    *
    *** Overlay for CHPTKTS in CHPBK

    *** Overlay for CHPPGM in CHPBK
    *
    *     +-------------------------------------------------------+
    * 298 |                       CHPMSCCW                        |
    *     +---------------------------+---------------------------+
    * 2A0 |         CHPHDCCW          |         CHPHCCWA          |
    *     +---------------------------+---------------------------+
    * 2A8 |         CHPCCW1           |         CHPCCW1A          |
    *     +---------------------------+---------------------------+
    * 2B0 |                                                       |
    *     =                       CHPCCWS                         =
    *     |                                                       |
    *     +-------------------------------------------------------+
    * 350
    *
    *** Overlay for CHPPGM in CHPBK

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

#### CHPBK Cross Reference

    Symbol         Dspl Value
    -------------- ---- -----
    CHPBKCNT       04A0 00000002
    CHPBLKID       0368
    CHPBLKSZ       036C
    CHPBUFHL       0498
    CHPCCWCT       02B0 00000015
    CHPCCWS        02B0
    CHPCCW1        02A8
    CHPCCW1A       02AC
    CHPCMCLR       01F0
    CHPCMCRL       0274 00000088
    CHPCMCUR       01F8
    CHPCMSSQ       01F4
    CHPCMXAB       0200
    CHPCURHD       01FC
    CHPCURTK       01F0
    CHPDPOFF       039C
    CHPENTRY       0224
    CHPFSEQ        0380
    CHPHCCWA       02A4
    CHPHDCCW       02A0
    CHPHDENT       0378
    CHPHDFLG       038A
    CHPHEADR       0368
    CHPHLLEN       049C 00000004
    CHPIDAWA       0490
    CHPIDWNX       0494
    CHPIOBY        04A0 000004F0
    CHPIODW        04A0 0000009E
    CHPIORBK       0000
    CHPLBLKZ       0210
    CHPLENBY       04A0 00000318
    CHPLIMIT       0228
    CHPLINDX       022C
    CHPLLPTR       0208
    CHPLOCK        01D8
    CHPLSTCW       0204
    CHPLSTHD       020C
    CHPMAPCT       038C
    CHPMSCCW       0298
    CHPNEXT        0278
    CHPOFFST       0230
    CHPOWNER       0378
    CHPPAGCT       0394
    CHPPAGNO       0390
    CHPPGM         0298
    CHPPGMLN       02B0 000000B8
    CHPPLIST       023C
    CHPPLLEN       023C 00000038
    CHPPLMAX       023C 0000000E
    CHPPOOLC       0238
    CHPRESVD       04A0
    CHPSAVE        027C
    CHPSPID        0388
    CHPSYSID       0384
    CHPTIME        0370
    CHPTKOFF       0398
    CHPTKTCT       021C
    CHPTKTS        0214
    CHPTKTSH       0214
    CHPTKTST       0218
    CHPXABSZ       0396
    CHPXAOFF       039A

This information is based on z/VM V5R2.0. Last updated on 12 Apr 2006 at 16:43:41 EDT.
Copyright IBM Corporation, 1990, 2005