Programming Interface Information:
This information is NOT intended to be
used as Programming Interfaces of z/VM. |
VOPBK
Control Block Contents
VOPBK DSECT
Cross Reference (Contains links to field and bit definitions)
VOPBK Prolog
Name : HCPVOPBK Description: HCPVOP simulation fetch/store work area DSECT : VOPBK Function : Work area used by HCPVOP simulation fetch/store routines. Located by : VMDVOPBK field of the VMDBK Created by : HCPBVMBK when a user logs on or when a new vCPU is defined Deleted by : HCPUSPFF when a user logs off or when a vCPU is detached Serialized : VMDBK dispatch lock (VMDBK local area) Comments :
VOPBK Control Block Content
VOPBK DSECT
Hex Dec Type/Val Lng Label (dup) Comments ---- ---- --------- ---- -------------- -------- 0000 0 Structure VOPBK HCPVOP simulation fetch/store work area 0000 0 Signed 4 VOPFLAG (0) 0000 0 Bitstring 1 VOPFLAG0 Flags for HCPVOP processing: 1... .... VOPBUFSP X'80' ..Caller has specified the ..buffer to use. .1.. .... VOPRWERR X'40' Indicate register wrap error ..1. .... VOPSTLOG X'20' Indicate request store into guest logical address. ...1 .... VOPFONLY X'10' Indicate this address space is read only. .... 1... VOPNXTMV X'08' More than one section of data will be moved. .... .1.. VOPGOTBF X'04' HCPVOP got free storage for the output data buffer. The address of the buffer is in VOPBUFAD. 0001 1 Bitstring 1 VOPFLAG1 Additional HCPVOP flags: 1... .... VOPGAM64 X'80' HCPVOP may need to execute in 64-bit addressing mode to access ESAME mode guest storage as host logical storage. .1.. .... VOPAMO64 X'40' HCPVOP is currently executing in 64-bit addressing mode to handle a V=V ESAME mode guest guest. 0002 2 Bitstring 1 VOPPURGE Purge operation bits 0003 3 Bitstring 1 VOPAR AR number 0004 4 Signed 4 * Reserved for future IBM use 0008 8 Signed 4 VOPHWRAP High half of address wrap mask 000C 12 Signed 4 VOPAWRAP Mask for address wrap (31-bit) 0010 16 Signed 4 VOPAGSIZ Page size - 1 (2047/4095) 0014 20 Address 4 VOPASUBR Subroutine for translation of guest logical (virtual, real, or absolute) to host logical 0018 24 Address 4 VOPBUFAD Pointer to CP operand buffer 001C 28 Address 4 VOPGRHL Subroutine for translation of guest real or absolute to host logical 0020 32 Signed 4 VOPIPLCK Address of IPTE lock (zero if relocation not active) 0024 36 Signed 4 VOPARMS (0) Input parameters 0024 36 Signed 2 VOPLEN Length of data to be fetched/ stored in bits 0-11. 0024 36 Bitstring 1 * Bits 0-7 of length. 0025 37 Bitstring 1 VOPINFL0 Bits 8-11 of length and 4 bits for flags. .... 1... VOPEXPRM X'08' Additional parameters are defined in the VNPBK. .... .1.. VOPALETS X'04' Guest-use ALET specified. .... ..1. VOPASITS X'02' I-ASIT specified. .... ...1 VOPMCRCD X'01' Return an MCRECORD. 0026 38 Bitstring 1 VOPINFLG Input flags. 1... .... VOPLAP X'80' Apply low address protection 1... .... VOPLAPFO X'80' Apply low address protection .1.. .... VOPPROT X'40' Apply key protection ..1. .... VOPGA64R X'20' For entry points which accept a guest operand address input in R1, input guest 64-bit address is provided in 64-bit wide input R1; for all entry points which deal with guest operands, HCPVOP internally represents the 64-bit guest operand address in 64-bit R1. ...1 .... VOPGA64S X'10' For entry points which accept a guest operand address input in R1, input guest 64-bit address is provided in a 64-bit host real storage area pointed to by the 31-bit host real address in 32-bit input R1; for all entry points which deal with guest operands, HCPVOP internally represents the 64-bit guest operand address in a 64-bit host real storage area pointed to by the 31-bit host real address in 31-bit R1. .... 1... VOPREGW X'08' Wrap register to R0 when RX=15 .... .11. VOPWRP64 X'06' 64-bit wrap rule .... .1.. VOPWRPD X'04' Diagnose wrap rule .... ..1. VOPWRP31 X'02' 31-bit wrap rule .... ...1 VOPREALA X'01' Input is guest real address 0027 39 Bitstring 1 VOPCODE The forth byte of input parm. First 4 bit is align code next 4 bit is operand code or AR number or address space mode 0028 40 Signed 4 * Reserved for ESAME gen 002C 44 Signed 4 VOPSTD (0) Segment-Table Designation (STD) 002C 44 Bitstring 1 VOPSTDB0 Byte 0 of STD 002D 45 Bitstring 1 VOPSTDB1 Byte 1 of STD 002E 46 Bitstring 1 VOPSTDB2 Byte 2 of STD 002F 47 Bitstring 1 VOPSTDB3 Byte 3 of STD 0030 48 Dbl-Word 8 VOPGADDR (0) Input address (64-bit) 0030 48 Signed 4 VOPHADDR High half of large input address 0034 52 Signed 4 VOPADDR Low half (31-bit) input address Longer data moves can be handled in up to three sections. The host logical address for each section, as well as the length of each section, are saved in this small array with 3 entries. Each entry has a 64-bit host logical address field (VOPGHLAD), the right half of which is mapped as a 31-bit host logical address field (VOPHLADR), and a length field (VOPHLLEN). The same names are used for all three entries, the table is accessed using an index register containing a multiple of the entry length (VOPHLAEL). 0038 56 Dbl-Word 8 VOPHLAEN (0) A host logical address section entry 0038 56 Signed 4 * (high half of VOPGHVA1) 003C 60 Address 4 VOPHLADR Host logical address of the first section (31-bit) 0040 64 Signed 4 VOPHLLEN Length of the first section -1 0044 68 Signed 4 * reserved for IBM use 00000010 VOPHLAEL *-VOPHLAEN Length of one entry 0048 72 Bitstring 1 * (32) Space for two more entries 0068 104 Dbl-Word 8 VOPIASIT I-ASIT for the guest-absolute address space to be accessed. 0070 112 Signed 4 VOPEXADR Address of the extended parameter list, if one exists. 0074 116 Signed 4 VOPEXFLG (0) Flag field from the extended parameter list. 0074 116 Bitstring 1 VOPEXFB0 Byte 0 of VOPEXFLG 1... .... VOPBAUTO VNPBAUTO BUFADDR=AUTO was specified .1.. .... VOPLNFLD VNPLNFLD The LENFIELD operand was specified, and the length to fetch is found in the halfword whose displacement is in VOPLENFD. ..1. .... VOPMXLEN VNPMXLEN The MAXLEN operand was specified, and the maximum length to fetch is in VOPMAXLN. 0075 117 Bitstring 1 VOPEXFB1 Byte 1 of VOPEXFLG 0076 118 Bitstring 1 VOPEXFB2 Byte 2 of VOPEXFLG 0077 119 Bitstring 1 VOPEXFB3 Byte 3 of VOPEXFLG 0078 120 Signed 4 VOPLENFD Displacement of the field from which to fetch the parameter list length. 007C 124 Signed 4 VOPLUNIT Units in which the length to fetch is expressed. 0080 128 Address 2 VOPMAXLN Maximum length to fetch, in DWs. 0082 130 Signed 2 VOPLENTH Length fetched from LENFIELD 0084 132 Signed 4 * reserved for IBM use 0088 136 Dbl-Word 8 VOPPSW Guest PSW (bits 0-64) HCPVOP only uses VOPPSW to save the bits in the beginning of the guest's PSW. It has no need for the instruction address. So, VOPPSW is large enough to save the entire PSW for a 390 mode guest or the first half of an ESAME mode guest. 00000090 VOPBKLEN *-VOPBK Define the length of the DSECT 00000012 VOPBKSIZ (VOPBKLEN+7)/8 Size of VOPBK in doublewords
VOPBK Storage Layout
*** VOPBK - HCPVOP simulation fetch/store work area * * +------+------+------+------+---------------------------+ * 0 |:FLAG0|:FLAG1|:PURGE|VOPAR |///////////////////////////| * +------+------+------+------+---------------------------+ * 8 | VOPHWRAP | VOPAWRAP | * +---------------------------+---------------------------+ * 10 | VOPAGSIZ | VOPASUBR | * +---------------------------+---------------------------+ * 18 | VOPBUFAD | VOPGRHL | * +---------------------------+-------------+-------------+ * 20 | VOPIPLCK | VOPLEN | 26 * +---------------------------+-------------+ * *** VOPBK - HCPVOP simulation fetch/store work area *** Overlay for VOPLEN in VOPBK * * +------+------+------+------+ * 20 ... 24 |//////|:INFL0|:INFLG|:CODE | * +---------------------------+------+------+------+------+ * 28 |///////////////////////////|:STDB0|:STDB1|:STDB2|:STDB3| * +---------------------------+------+------+------+------+ * 30 | VOPHADDR | VOPADDR | * +---------------------------+---------------------------+ * 38 |///////////////////////////| VOPHLADR | * +---------------------------+---------------------------+ * 40 | VOPHLLEN |///////////////////////////| * +---------------------------+---------------------------+ * 48 |///////////////////////////////////////////////////////| * =///////////////////////////////////////////////////////= * |///////////////////////////////////////////////////////| * +-------------------------------------------------------+ * 68 | VOPIASIT | * +---------------------------+------+------+------+------+ * 70 | VOPEXADR |:EXFB0|:EXFB1|:EXFB2|:EXFB3| * +---------------------------+------+------+------+------+ * 78 | VOPLENFD | VOPLUNIT | * +-------------+-------------+---------------------------+ * 80 | VOPMAXLN | VOPLENTH |///////////////////////////| * +-------------+-------------+---------------------------+ * 88 | VOPPSW | * +-------------------------------------------------------+ * 90 * *** Overlay for VOPLEN in VOPBK
VOPBK Cross Reference
Symbol Dspl Value -------------- ---- ----- VOPADDR 0034 VOPAGSIZ 0010 VOPALETS 0025 04 VOPAMO64 0001 40 VOPAR 0003 VOPARMS 0024 VOPASITS 0025 02 VOPASUBR 0014 VOPAWRAP 000C VOPBAUTO 0074 80 VOPBKLEN 0088 00000090 VOPBKSIZ 0088 00000012 VOPBUFAD 0018 VOPBUFSP 0000 80 VOPCODE 0027 VOPEXADR 0070 VOPEXFB0 0074 VOPEXFB1 0075 VOPEXFB2 0076 VOPEXFB3 0077 VOPEXFLG 0074 VOPEXPRM 0025 08 VOPFLAG 0000 VOPFLAG0 0000 VOPFLAG1 0001 VOPFONLY 0000 10 VOPGADDR 0030 VOPGAM64 0001 80 VOPGA64R 0026 20 VOPGA64S 0026 10 VOPGOTBF 0000 04 VOPGRHL 001C VOPHADDR 0030 VOPHLADR 003C VOPHLAEL 0044 00000010 VOPHLAEN 0038 VOPHLLEN 0040 VOPHWRAP 0008 VOPIASIT 0068 VOPINFLG 0026 VOPINFL0 0025 VOPIPLCK 0020 VOPLAP 0026 80 VOPLAPFO 0026 80 VOPLEN 0024 VOPLENFD 0078 VOPLENTH 0082 VOPLNFLD 0074 40 VOPLUNIT 007C VOPMAXLN 0080 VOPMCRCD 0025 01 VOPMXLEN 0074 20 VOPNXTMV 0000 08 VOPPROT 0026 40 VOPPSW 0088 VOPPURGE 0002 VOPREALA 0026 01 VOPREGW 0026 08 VOPRWERR 0000 40 VOPSTD 002C VOPSTDB0 002C VOPSTDB1 002D VOPSTDB2 002E VOPSTDB3 002F VOPSTLOG 0000 20 VOPWRPD 0026 04 VOPWRP31 0026 02 VOPWRP64 0026 06
Last updated on 5 Jun 2001 at 17:14:36 EDT.
Copyright IBM Corporation, 1990, 2001