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