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 (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
Copyright IBM Corporation, 1990, 2003