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 (65)  Base IORBK region
            Lock for this IORBK and CHPBK work area
    0208  520 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.
    0220  544 Signed       2 CHPCMCLR (0)   Beginning of area to be cleared
                                            before reuse for trailer
    0220  544 Address      4 CHPCURTK       Last ticket contained in current
                                            block
    0224  548 Address      4 CHPCMSSQ       Last SSQBK
    0228  552 Address      4 CHPCMCUR       Address of next Vpage slot in
                                            last SSQBK
    022C  556 Signed       4 CHPCURHD       Displacement in header of cur hdr
    0230  560 Signed       4 CHPCMXAB       Amt of XAB data associated with
                                            last tkt remaining to be written
    0234  564 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
    0238  568 Signed       4 CHPLLPTR       Last offset in page list +1 used
    023C  572 Address      4 CHPLSTHD       Hdr addr for last completed file
    0240  576 Signed       4 CHPLBLKZ       Save last block size at last
                                            complete file/tkt in this block.
            Counters, etc.
    0244  580 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
    0244  580 Address      4 CHPTKTSH       Head of CHPTKTS
    0248  584 Address      4 CHPTKTST       Tail of CHPTKTS
    024C  588 Signed       4 CHPTKTCT       Corresponding count of files on
                                            CHPTKTS
    0250  592 Signed       4 *              Reserved
    0254  596 Signed       4 CHPENTRY       Current entry in the header
    0258  600 Signed       4 CHPLIMIT       After the last entry in the hdr
    025C  604 Signed       4 CHPLINDX       Index into CCW list of buffers
    0260  608 Signed       4 CHPOFFST       Offset into block where data
                                            should be added
    0264  612 Signed       4 *
    0268  616 Signed       4 CHPPOOLC       Count of pool pages (data pages)
    026C  620 Address      4 CHPPLIST (14)  List of pages locked for this blk
              00000038       CHPPLLEN       *-CHPPLIST Length to clear
              0000000E       CHPPLMAX       14 Maximum number of entries
    02A4  676 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
    02A8  680 Address      4 CHPNEXT        Next work area in circular queue
            Save area across GOTO I/O request
    02AC  684 Signed       4 CHPSAVE (7)    Save R3-R9 across call to IOS.QS
            Channel Program and Header Block copied from TAPBK
    02C8  712 Dbl-Word     8 CHPPGM (26)    Modeset + hdr + 3*8 (desc + xab +
                                            data)
    0398  920 Dbl-Word     8 CHPHEADR (37)  Block header
            Pointers
    04C0 1216 Signed       4 CHPIDAWA       IDAW list anchor
    04C4 1220 Signed       4 CHPIDWNX       Next available IDAW slot
    04C8 1224 Signed       4 CHPBUFHL       Host logical buffer addr anchor
    04CC 1228 Signed       4 *              Reserved
              00000004       CHPHLLEN       4 Length of CHPBUFHL entries
            End of CHPBK definition
    04D0 1232 Dbl-Word     8 CHPRESVD (10)  Round it off
              00000318       CHPLENBY       *-CHPLOCK Extra space (after
                                            IORBK)
              00000520       CHPIOBY        *-CHPBK Whole work area size in
                                            bytes
              000000A4       CHPIODW        CHPIOBY/8 Same in double words
              00000002       CHPBKCNT       2 Number of work areas per drive
            Redefinition for the channel program build area
    02C8  712 Dbl-Word     8 CHPMSCCW       Modeset, if applicable
    02D0  720 Address      4 CHPHDCCW       Read/write header CCW
    02D4  724 Address      4 CHPHCCWA       Address of the CHPHEADR
    02D8  728 Address      4 CHPCCW1        First general CCW
    02DC  732 Address      4 CHPCCW1A       Address section for deblocking
    02E0  736 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
    0398  920 Character    4 CHPBLKID       Generally 'XHDR', could be 'TRLR'
    039C  924 Signed       4 CHPBLKSZ       Size of this block in bytes
    03A0  928 Dbl-Word     8 CHPTIME        Time stamp
            Definition of an individual entry
    03A8  936 Dbl-Word     8 CHPHDENT (0)   Start of the first entry
    03A8  936 Character    8 CHPOWNER       File owner
    03B0  944 Signed       4 CHPFSEQ        File sequence number for drive
    03B4  948 Signed       4 CHPSYSID       System spool file ID when dumped
    03B8  952 Signed       2 CHPSPID        User spool file ID when dumped
    03BA  954 Bitstring    1 CHPHDFLG       Flags describing file section
    03BB  955 Bitstring    1 *
    03BC  956 Signed       4 CHPMAPCT       Count of map pages needed for
                                            file
    03C0  960 Signed       4 CHPPAGNO       Starting relative page number
    03C4  964 Signed       2 CHPPAGCT       Count of data pages in block
    03C6  966 Signed       2 CHPXABSZ       Size of XAB section in block
    03C8  968 Signed       2 CHPTKOFF       Offset to ticket - file
                                            descriptor
    03CA  970 Signed       2 CHPXAOFF       Offset to extended attributes buf
    03CC  972 Signed       2 CHPDPOFF       Offset to data pages
    03CE  974 Signed       2 *

#### CHPBK Storage Layout

    *** CHPBK - SPXTAPE Channel Program Block
    *
    *     +-------------------------------------------------------+
    *   0 |                                                       |
    *     =                       CHPIORBK                        =
    *     |                                                       |
    *     +-------------------------------------------------------+
    * 208 |                                                       |
    *     =                       CHPLOCK                         =
    *     |                                                       |
    *     +---------------------------+---------------------------+
    * 220 |         CHPCURTK          |         CHPCMSSQ          |
    *     +---------------------------+---------------------------+
    * 228 |         CHPCMCUR          |         CHPCURHD          |
    *     +---------------------------+---------------------------+
    * 230 |         CHPCMXAB          |         CHPLSTCW          |
    *     +---------------------------+---------------------------+
    * 238 |         CHPLLPTR          |         CHPLSTHD          |
    *     +---------------------------+---------------------------+
    * 240 |         CHPLBLKZ          |                           |
    *     +---------------------------+                           |
    *     |                       CHPTKTS                         |
    *     |                           +---------------------------+
    *     |                           | 254
    *     +---------------------------+
    *
    *** CHPBK - SPXTAPE Channel Program Block

    *** Overlay for CHPTKTS in CHPBK
    *
    *                                 +---------------------------+
    * 240 ...                     244 |         CHPTKTSH          |
    *     +---------------------------+---------------------------+
    * 248 |         CHPTKTST          |         CHPTKTCT          |
    *     +---------------------------+---------------------------+
    * 250 |///////////////////////////|         CHPENTRY          |
    *     +---------------------------+---------------------------+
    * 258 |         CHPLIMIT          |         CHPLINDX          |
    *     +---------------------------+---------------------------+
    * 260 |         CHPOFFST          |///////////////////////////|
    *     +---------------------------+---------------------------+
    * 268 |         CHPPOOLC          |                           |
    *     +---------------------------+                           |
    * 270 |                                                       |
    *     =                       CHPPLIST                        =
    *     |                           +---------------------------+
    * 2A0 |                           |///////////////////////////|
    *     +---------------------------+---------------------------+
    * 2A8 |         CHPNEXT           |                           |
    *     +---------------------------+                           |
    * 2B0 |                                                       |
    *     =                       CHPSAVE                         =
    *     |                                                       |
    *     +-------------------------------------------------------+
    * 2C8 |                                                       |
    *     =                        CHPPGM                         =
    *     |                                                       |
    *     +-------------------------------------------------------+
    * 398 |                                                       |
    *     =                       CHPHEADR                        =
    *     |                                                       |
    *     +---------------------------+---------------------------+
    * 4C0 |         CHPIDAWA          |         CHPIDWNX          |
    *     +---------------------------+---------------------------+
    * 4C8 |         CHPBUFHL          |///////////////////////////|
    *     +---------------------------+---------------------------+
    * 4D0 |                                                       |
    *     =                       CHPRESVD                        =
    *     |                                                       |
    *     +-------------------------------------------------------+
    * 520
    *
    *** Overlay for CHPTKTS in CHPBK

    *** Overlay for CHPPGM in CHPBK
    *
    *     +-------------------------------------------------------+
    * 2C8 |                       CHPMSCCW                        |
    *     +---------------------------+---------------------------+
    * 2D0 |         CHPHDCCW          |         CHPHCCWA          |
    *     +---------------------------+---------------------------+
    * 2D8 |         CHPCCW1           |         CHPCCW1A          |
    *     +---------------------------+---------------------------+
    * 2E0 |                                                       |
    *     =                       CHPCCWS                         =
    *     |                                                       |
    *     +-------------------------------------------------------+
    * 380
    *
    *** Overlay for CHPPGM in CHPBK

    *** Overlay for CHPHEADR in CHPBK
    *
    *     +---------------------------+---------------------------+
    * 398 |         CHPBLKID          |         CHPBLKSZ          |
    *     +---------------------------+---------------------------+
    * 3A0 |                       CHPTIME                         |
    *     +-------------------------------------------------------+
    * 3A8 |                       CHPOWNER                        |
    *     +---------------------------+---------------------------+
    * 3B0 |         CHPFSEQ           |         CHPSYSID          |
    *     +-------------+------+------+---------------------------+
    * 3B8 |  CHPSPID    |:HDFLG|//////|         CHPMAPCT          |
    *     +-------------+------+------+-------------+-------------+
    * 3C0 |         CHPPAGNO          |  CHPPAGCT   |  CHPXABSZ   |
    *     +-------------+-------------+-------------+-------------+
    * 3C8 |  CHPTKOFF   |  CHPXAOFF   |  CHPDPOFF   |/////////////|
    *     +-------------+-------------+-------------+-------------+
    * 3D0
    *
    *** Overlay for CHPHEADR in CHPBK

#### CHPBK Cross Reference

    Symbol         Dspl Value
    -------------- ---- -----
    CHPBKCNT       04D0 00000002
    CHPBLKID       0398
    CHPBLKSZ       039C
    CHPBUFHL       04C8
    CHPCCWCT       02E0 00000015
    CHPCCWS        02E0
    CHPCCW1        02D8
    CHPCCW1A       02DC
    CHPCMCLR       0220
    CHPCMCRL       02A4 00000088
    CHPCMCUR       0228
    CHPCMSSQ       0224
    CHPCMXAB       0230
    CHPCURHD       022C
    CHPCURTK       0220
    CHPDPOFF       03CC
    CHPENTRY       0254
    CHPFSEQ        03B0
    CHPHCCWA       02D4
    CHPHDCCW       02D0
    CHPHDENT       03A8
    CHPHDFLG       03BA
    CHPHEADR       0398
    CHPHLLEN       04CC 00000004
    CHPIDAWA       04C0
    CHPIDWNX       04C4
    CHPIOBY        04D0 00000520
    CHPIODW        04D0 000000A4
    CHPIORBK       0000
    CHPLBLKZ       0240
    CHPLENBY       04D0 00000318
    CHPLIMIT       0258
    CHPLINDX       025C
    CHPLLPTR       0238
    CHPLOCK        0208
    CHPLSTCW       0234
    CHPLSTHD       023C
    CHPMAPCT       03BC
    CHPMSCCW       02C8
    CHPNEXT        02A8
    CHPOFFST       0260
    CHPOWNER       03A8
    CHPPAGCT       03C4
    CHPPAGNO       03C0
    CHPPGM         02C8
    CHPPGMLN       02E0 000000B8
    CHPPLIST       026C
    CHPPLLEN       026C 00000038
    CHPPLMAX       026C 0000000E
    CHPPOOLC       0268
    CHPRESVD       04D0
    CHPSAVE        02AC
    CHPSPID        03B8
    CHPSYSID       03B4
    CHPTIME        03A0
    CHPTKOFF       03C8
    CHPTKTCT       024C
    CHPTKTS        0244
    CHPTKTSH       0244
    CHPTKTST       0248
    CHPXABSZ       03C6
    CHPXAOFF       03CA

This information is based on z/VM V6R1.0. Last updated on 18 Feb 2010 at 08:28:00 EDT.
Copyright IBM Corporation, 1990, 2008