Programming Interface Information:
This information is NOT intended to be used as Programming Interfaces of z/VM. |
CHPBK
Control Block Contents
CHPBK DSECT
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 (64) Base IORBK region Lock for this IORBK and CHPBK work area 0200 512 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. 0218 536 Signed 2 CHPCMCLR (0) Beginning of area to be cleared before reuse for trailer 0218 536 Address 4 CHPCURTK Last ticket contained in current block 021C 540 Address 4 CHPCMSSQ Last SSQBK 0220 544 Address 4 CHPCMCUR Address of next Vpage slot in last SSQBK 0224 548 Signed 4 CHPCURHD Displacement in header of cur hdr 0228 552 Signed 4 CHPCMXAB Amt of XAB data associated with last tkt remaining to be written 022C 556 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 0230 560 Signed 4 CHPLLPTR Last offset in page list +1 used 0234 564 Address 4 CHPLSTHD Hdr addr for last completed file 0238 568 Signed 4 CHPLBLKZ Save last block size at last complete file/tkt in this block. Counters, etc. 023C 572 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 023C 572 Address 4 CHPTKTSH Head of CHPTKTS 0240 576 Address 4 CHPTKTST Tail of CHPTKTS 0244 580 Signed 4 CHPTKTCT Corresponding count of files on CHPTKTS 0248 584 Signed 4 * Reserved 024C 588 Signed 4 CHPENTRY Current entry in the header 0250 592 Signed 4 CHPLIMIT After the last entry in the hdr 0254 596 Signed 4 CHPLINDX Index into CCW list of buffers 0258 600 Signed 4 CHPOFFST Offset into block where data should be added 025C 604 Signed 4 * 0260 608 Signed 4 CHPPOOLC Count of pool pages (data pages) 0264 612 Address 4 CHPPLIST (14) List of pages locked for this blk 00000038 CHPPLLEN *-CHPPLIST Length to clear 0000000E CHPPLMAX 14 Maximum number of entries 029C 668 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 02A0 672 Address 4 CHPNEXT Next work area in circular queue Save area across GOTO I/O request 02A4 676 Signed 4 CHPSAVE (7) Save R3-R9 across call to IOS.QS Channel Program and Header Block copied from TAPBK 02C0 704 Dbl-Word 8 CHPPGM (26) Modeset + hdr + 3*8 (desc + xab + data) 0390 912 Dbl-Word 8 CHPHEADR (37) Block header Pointers 04B8 1208 Signed 4 CHPIDAWA IDAW list anchor 04BC 1212 Signed 4 CHPIDWNX Next available IDAW slot 04C0 1216 Signed 4 CHPBUFHL Host logical buffer addr anchor 04C4 1220 Signed 4 * Reserved 00000004 CHPHLLEN 4 Length of CHPBUFHL entries End of CHPBK definition 04C8 1224 Dbl-Word 8 CHPRESVD (10) Round it off 00000318 CHPLENBY *-CHPLOCK Extra space (after IORBK) 00000518 CHPIOBY *-CHPBK Whole work area size in bytes 000000A3 CHPIODW CHPIOBY/8 Same in double words 00000002 CHPBKCNT 2 Number of work areas per drive Redefinition for the channel program build area 02C0 704 Dbl-Word 8 CHPMSCCW Modeset, if applicable 02C8 712 Address 4 CHPHDCCW Read/write header CCW 02CC 716 Address 4 CHPHCCWA Address of the CHPHEADR 02D0 720 Address 4 CHPCCW1 First general CCW 02D4 724 Address 4 CHPCCW1A Address section for deblocking 02D8 728 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 0390 912 Character 4 CHPBLKID Generally 'XHDR', could be 'TRLR' 0394 916 Signed 4 CHPBLKSZ Size of this block in bytes 0398 920 Dbl-Word 8 CHPTIME Time stamp Definition of an individual entry 03A0 928 Dbl-Word 8 CHPHDENT (0) Start of the first entry 03A0 928 Character 8 CHPOWNER File owner 03A8 936 Signed 4 CHPFSEQ File sequence number for drive 03AC 940 Signed 4 CHPSYSID System spool file ID when dumped 03B0 944 Signed 2 CHPSPID User spool file ID when dumped 03B2 946 Bitstring 1 CHPHDFLG Flags describing file section 03B3 947 Bitstring 1 * 03B4 948 Signed 4 CHPMAPCT Count of map pages needed for file 03B8 952 Signed 4 CHPPAGNO Starting relative page number 03BC 956 Signed 2 CHPPAGCT Count of data pages in block 03BE 958 Signed 2 CHPXABSZ Size of XAB section in block 03C0 960 Signed 2 CHPTKOFF Offset to ticket - file descriptor 03C2 962 Signed 2 CHPXAOFF Offset to extended attributes buf 03C4 964 Signed 2 CHPDPOFF Offset to data pages 03C6 966 Signed 2 *
CHPBK Storage Layout
*** CHPBK - SPXTAPE Channel Program Block * * +-------------------------------------------------------+ * 0 | | * = CHPIORBK = * | | * +-------------------------------------------------------+ * 200 | | * = CHPLOCK = * | | * +---------------------------+---------------------------+ * 218 | CHPCURTK | CHPCMSSQ | * +---------------------------+---------------------------+ * 220 | CHPCMCUR | CHPCURHD | * +---------------------------+---------------------------+ * 228 | CHPCMXAB | CHPLSTCW | * +---------------------------+---------------------------+ * 230 | CHPLLPTR | CHPLSTHD | * +---------------------------+---------------------------+ * 238 | CHPLBLKZ | | * +---------------------------+ | * | CHPTKTS | * | +---------------------------+ * | | 24C * +---------------------------+ * *** CHPBK - SPXTAPE Channel Program Block *** Overlay for CHPTKTS in CHPBK * * +---------------------------+ * 238 ... 23C | CHPTKTSH | * +---------------------------+---------------------------+ * 240 | CHPTKTST | CHPTKTCT | * +---------------------------+---------------------------+ * 248 |///////////////////////////| CHPENTRY | * +---------------------------+---------------------------+ * 250 | CHPLIMIT | CHPLINDX | * +---------------------------+---------------------------+ * 258 | CHPOFFST |///////////////////////////| * +---------------------------+---------------------------+ * 260 | CHPPOOLC | | * +---------------------------+ | * 268 | | * = CHPPLIST = * | +---------------------------+ * 298 | |///////////////////////////| * +---------------------------+---------------------------+ * 2A0 | CHPNEXT | | * +---------------------------+ | * 2A8 | | * = CHPSAVE = * | | * +-------------------------------------------------------+ * 2C0 | | * = CHPPGM = * | | * +-------------------------------------------------------+ * 390 | | * = CHPHEADR = * | | * +---------------------------+---------------------------+ * 4B8 | CHPIDAWA | CHPIDWNX | * +---------------------------+---------------------------+ * 4C0 | CHPBUFHL |///////////////////////////| * +---------------------------+---------------------------+ * 4C8 | | * = CHPRESVD = * | | * +-------------------------------------------------------+ * 518 * *** Overlay for CHPTKTS in CHPBK *** Overlay for CHPPGM in CHPBK * * +-------------------------------------------------------+ * 2C0 | CHPMSCCW | * +---------------------------+---------------------------+ * 2C8 | CHPHDCCW | CHPHCCWA | * +---------------------------+---------------------------+ * 2D0 | CHPCCW1 | CHPCCW1A | * +---------------------------+---------------------------+ * 2D8 | | * = CHPCCWS = * | | * +-------------------------------------------------------+ * 378 * *** Overlay for CHPPGM in CHPBK *** Overlay for CHPHEADR in CHPBK * * +---------------------------+---------------------------+ * 390 | CHPBLKID | CHPBLKSZ | * +---------------------------+---------------------------+ * 398 | CHPTIME | * +-------------------------------------------------------+ * 3A0 | CHPOWNER | * +---------------------------+---------------------------+ * 3A8 | CHPFSEQ | CHPSYSID | * +-------------+------+------+---------------------------+ * 3B0 | CHPSPID |:HDFLG|//////| CHPMAPCT | * +-------------+------+------+-------------+-------------+ * 3B8 | CHPPAGNO | CHPPAGCT | CHPXABSZ | * +-------------+-------------+-------------+-------------+ * 3C0 | CHPTKOFF | CHPXAOFF | CHPDPOFF |/////////////| * +-------------+-------------+-------------+-------------+ * 3C8 * *** Overlay for CHPHEADR in CHPBK
CHPBK Cross Reference
Symbol Dspl Value -------------- ---- ----- CHPBKCNT 04C8 00000002 CHPBLKID 0390 CHPBLKSZ 0394 CHPBUFHL 04C0 CHPCCWCT 02D8 00000015 CHPCCWS 02D8 CHPCCW1 02D0 CHPCCW1A 02D4 CHPCMCLR 0218 CHPCMCRL 029C 00000088 CHPCMCUR 0220 CHPCMSSQ 021C CHPCMXAB 0228 CHPCURHD 0224 CHPCURTK 0218 CHPDPOFF 03C4 CHPENTRY 024C CHPFSEQ 03A8 CHPHCCWA 02CC CHPHDCCW 02C8 CHPHDENT 03A0 CHPHDFLG 03B2 CHPHEADR 0390 CHPHLLEN 04C4 00000004 CHPIDAWA 04B8 CHPIDWNX 04BC CHPIOBY 04C8 00000518 CHPIODW 04C8 000000A3 CHPIORBK 0000 CHPLBLKZ 0238 CHPLENBY 04C8 00000318 CHPLIMIT 0250 CHPLINDX 0254 CHPLLPTR 0230 CHPLOCK 0200 CHPLSTCW 022C CHPLSTHD 0234 CHPMAPCT 03B4 CHPMSCCW 02C0 CHPNEXT 02A0 CHPOFFST 0258 CHPOWNER 03A0 CHPPAGCT 03BC CHPPAGNO 03B8 CHPPGM 02C0 CHPPGMLN 02D8 000000B8 CHPPLIST 0264 CHPPLLEN 0264 00000038 CHPPLMAX 0264 0000000E CHPPOOLC 0260 CHPRESVD 04C8 CHPSAVE 02A4 CHPSPID 03B0 CHPSYSID 03AC CHPTIME 0398 CHPTKOFF 03C0 CHPTKTCT 0244 CHPTKTS 023C CHPTKTSH 023C CHPTKTST 0240 CHPXABSZ 03BE CHPXAOFF 03C2
Copyright IBM Corporation, 1990, 2007