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 (43) Base IORBK region Lock for this IORBK and CHPBK work area 0158 344 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. 0170 368 Signed 2 CHPCMCLR (0) Beginning of area to be cleared before reuse for trailer 0170 368 Address 4 CHPCURTK Last ticket contained in current block 0174 372 Address 4 CHPCMSSQ Last SSQBK 0178 376 Address 4 CHPCMCUR Address of next Vpage slot in last SSQBK 017C 380 Signed 4 CHPCURHD Displacement in header of cur hdr 0180 384 Signed 4 CHPCMXAB Amt of XAB data associated with last tkt remaining to be written 0184 388 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 0188 392 Signed 4 CHPLLPTR Last offset in page list +1 used 018C 396 Address 4 CHPLSTHD Hdr addr for last completed file 0190 400 Signed 4 CHPLBLKZ Save last block size at last complete file/tkt in this block. Counters, etc. 0194 404 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 0194 404 Address 4 CHPTKTSH Head of CHPTKTS 0198 408 Address 4 CHPTKTST Tail of CHPTKTS 019C 412 Signed 4 CHPTKTCT Corresponding count of files on CHPTKTS 01A0 416 Signed 4 * Reserved 01A4 420 Signed 4 CHPENTRY Current entry in the header 01A8 424 Signed 4 CHPLIMIT After the last entry in the hdr 01AC 428 Signed 4 CHPLINDX Index into CCW list of buffers 01B0 432 Signed 4 CHPOFFST Offset into block where data should be added 01B4 436 Signed 4 * 01B8 440 Signed 4 CHPPOOLC Count of pool pages (data pages) 01BC 444 Address 4 CHPPLIST (14) List of pages locked for this blk 00000038 CHPPLLEN *-CHPPLIST Length to clear 0000000E CHPPLMAX 14 Maximum number of entries 01F4 500 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 01F8 504 Address 4 CHPNEXT Next work area in circular queue Save area across GOTO I/O request 01FC 508 Signed 4 CHPSAVE (7) Save R3-R9 across call to IOS.QS Channel Program and Header Block copied from TAPBK 0218 536 Dbl-Word 8 CHPPGM (26) Modeset + hdr + 3*8 (desc + xab + data) 02E8 744 Dbl-Word 8 CHPHEADR (37) Block header End of CHPBK definition 0410 1040 Dbl-Word 8 CHPRESVD (12) Round it off 00000318 CHPLENBY *-CHPLOCK Extra space (after IORBK) 00000470 CHPIOBY *-CHPBK Whole work area size in bytes 0000008E CHPIODW CHPIOBY/8 Same in double words 00000002 CHPBKCNT 2 Number of work areas per drive Redefinition for the channel program build area 0218 536 Dbl-Word 8 CHPMSCCW Modeset, if applicable 0220 544 Address 4 CHPHDCCW Read/write header CCW 0224 548 Address 4 CHPHCCWA Address of the CHPHEADR 0228 552 Address 4 CHPCCW1 First general CCW 022C 556 Address 4 CHPCCW1A Address section for deblocking 0230 560 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 02E8 744 Character 4 CHPBLKID Generally 'XHDR', could be 'TRLR' 02EC 748 Signed 4 CHPBLKSZ Size of this block in bytes 02F0 752 Dbl-Word 8 CHPTIME Time stamp Definition of an individual entry 02F8 760 Dbl-Word 8 CHPHDENT (0) Start of the first entry 02F8 760 Character 8 CHPOWNER File owner 0300 768 Signed 4 CHPFSEQ File sequence number for drive 0304 772 Signed 4 CHPSYSID System spool file ID when dumped 0308 776 Signed 2 CHPSPID User spool file ID when dumped 030A 778 Bitstring 1 CHPHDFLG Flags describing file section 030B 779 Bitstring 1 * 030C 780 Signed 4 CHPMAPCT Count of map pages needed for file 0310 784 Signed 4 CHPPAGNO Starting relative page number 0314 788 Signed 2 CHPPAGCT Count of data pages in block 0316 790 Signed 2 CHPXABSZ Size of XAB section in block 0318 792 Signed 2 CHPTKOFF Offset to ticket - file descriptor 031A 794 Signed 2 CHPXAOFF Offset to extended attributes buf 031C 796 Signed 2 CHPDPOFF Offset to data pages 031E 798 Signed 2 *
CHPBK Storage Layout
*** CHPBK - SPXTAPE Channel Program Block * * +-------------------------------------------------------+ * 0 | | * = CHPIORBK = * | | * +-------------------------------------------------------+ * 158 | | * = CHPLOCK = * | | * +---------------------------+---------------------------+ * 170 | CHPCURTK | CHPCMSSQ | * +---------------------------+---------------------------+ * 178 | CHPCMCUR | CHPCURHD | * +---------------------------+---------------------------+ * 180 | CHPCMXAB | CHPLSTCW | * +---------------------------+---------------------------+ * 188 | CHPLLPTR | CHPLSTHD | * +---------------------------+---------------------------+ * 190 | CHPLBLKZ | | * +---------------------------+ | * | CHPTKTS | * | +---------------------------+ * | | 1A4 * +---------------------------+ * *** CHPBK - SPXTAPE Channel Program Block *** Overlay for CHPTKTS in CHPBK * * +---------------------------+ * 190 ... 194 | CHPTKTSH | * +---------------------------+---------------------------+ * 198 | CHPTKTST | CHPTKTCT | * +---------------------------+---------------------------+ * 1A0 |///////////////////////////| CHPENTRY | * +---------------------------+---------------------------+ * 1A8 | CHPLIMIT | CHPLINDX | * +---------------------------+---------------------------+ * 1B0 | CHPOFFST |///////////////////////////| * +---------------------------+---------------------------+ * 1B8 | CHPPOOLC | | * +---------------------------+ | * 1C0 | | * = CHPPLIST = * | +---------------------------+ * 1F0 | |///////////////////////////| * +---------------------------+---------------------------+ * 1F8 | CHPNEXT | | * +---------------------------+ | * 200 | | * = CHPSAVE = * | | * +-------------------------------------------------------+ * 218 | | * = CHPPGM = * | | * +-------------------------------------------------------+ * 2E8 | | * = CHPHEADR = * | | * +-------------------------------------------------------+ * 410 | | * = CHPRESVD = * | | * +-------------------------------------------------------+ * 470 * *** Overlay for CHPTKTS in CHPBK *** Overlay for CHPPGM in CHPBK * * +-------------------------------------------------------+ * 218 | CHPMSCCW | * +---------------------------+---------------------------+ * 220 | CHPHDCCW | CHPHCCWA | * +---------------------------+---------------------------+ * 228 | CHPCCW1 | CHPCCW1A | * +---------------------------+---------------------------+ * 230 | | * = CHPCCWS = * | | * +-------------------------------------------------------+ * 2D0 * *** Overlay for CHPPGM in CHPBK *** Overlay for CHPHEADR in CHPBK * * +---------------------------+---------------------------+ * 2E8 | CHPBLKID | CHPBLKSZ | * +---------------------------+---------------------------+ * 2F0 | CHPTIME | * +-------------------------------------------------------+ * 2F8 | CHPOWNER | * +---------------------------+---------------------------+ * 300 | CHPFSEQ | CHPSYSID | * +-------------+------+------+---------------------------+ * 308 | CHPSPID |:HDFLG|//////| CHPMAPCT | * +-------------+------+------+-------------+-------------+ * 310 | CHPPAGNO | CHPPAGCT | CHPXABSZ | * +-------------+-------------+-------------+-------------+ * 318 | CHPTKOFF | CHPXAOFF | CHPDPOFF |/////////////| * +-------------+-------------+-------------+-------------+ * 320 * *** Overlay for CHPHEADR in CHPBK
CHPBK Cross Reference
Symbol Dspl Value -------------- ---- ----- CHPBKCNT 0410 00000002 CHPBLKID 02E8 CHPBLKSZ 02EC CHPCCWS 0230 CHPCCW1 0228 CHPCCW1A 022C CHPCMCLR 0170 CHPCMCRL 01F4 00000088 CHPCMCUR 0178 CHPCMSSQ 0174 CHPCMXAB 0180 CHPCURHD 017C CHPCURTK 0170 CHPDPOFF 031C CHPENTRY 01A4 CHPFSEQ 0300 CHPHCCWA 0224 CHPHDCCW 0220 CHPHDENT 02F8 CHPHDFLG 030A CHPHEADR 02E8 CHPIOBY 0410 00000470 CHPIODW 0410 0000008E CHPIORBK 0000 CHPLBLKZ 0190 CHPLENBY 0410 00000318 CHPLIMIT 01A8 CHPLINDX 01AC CHPLLPTR 0188 CHPLOCK 0158 CHPLSTCW 0184 CHPLSTHD 018C CHPMAPCT 030C CHPMSCCW 0218 CHPNEXT 01F8 CHPOFFST 01B0 CHPOWNER 02F8 CHPPAGCT 0314 CHPPAGNO 0310 CHPPGM 0218 CHPPGMLN 0230 000000B8 CHPPLIST 01BC CHPPLLEN 01BC 00000038 CHPPLMAX 01BC 0000000E CHPPOOLC 01B8 CHPRESVD 0410 CHPSAVE 01FC CHPSPID 0308 CHPSYSID 0304 CHPTIME 02F0 CHPTKOFF 0318 CHPTKTCT 019C CHPTKTS 0194 CHPTKTSH 0194 CHPTKTST 0198 CHPXABSZ 0316 CHPXAOFF 031A
Copyright IBM Corporation, 1990, 2001