|
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