VPABK Back to Index page
 
Prolog 
Control Block Contents 
   VPABK DSECT
   VPALE DSECT
Storage Layout 
Cross Reference (Contains links to field and bit definitions)
Programming Interface Information:
This information is NOT intended to be
used as Programming Interfaces of z/VM.


  VPABK Prolog Top of page
 
 NAME       : HCPVPABK
 DESCRIPTION: Virtual Page Array (Guest Relocation)
 DSECT      : VPABK
 FUNCTION   : This control block is used during Live Guest
              Relocation to accumulate a set of guest pages to be
              sent from the source system to the destination system.
              It is tightly coupled to the HCPGSBBK.
  ocated by
              - On the source system: this block is contained
              within the HCPGSBBK (see GSBVPA).
              - On the destination system: located by the first
              fragment received (host logical address).
 CREATED BY : - On the source system: Created as part of the GSBBK.
              - On the destination system: Received as the first
              fragment from ISFC and mapped in situ.
 DELETED BY : - On the source system: Deleted as part of the GSBBK.
              - On the destination system:
              1) The receive loop (HCPRLBRC) when the VPABK is
              for state changes and/or updated resident/xstore
              pages.  (VPAFLAG.VPAPWM is on.)
              2) The DASD handler (HCPDOPMW) when the VPABK is
              for updated DASD pages.  (VPAFLAG.VPAPWM is off.)
 REFERENCES : HCPRLMSG COPY
 SERIALIZED : Only one task should have the address
              of a particular VPABK.
 RELOCATION CONSIDERATIONS : None
  otes
              - The entire VPABK is transmitted from the
              source system to the destination system.
              - The VPABK is broken into two main parts.
              See each part for more information.
              - Header information
              - VPARRAY: Virtual Page Array.
              - Sample HCPUSING
              HCPUSING GSBBK,R7           Address GSBBK.
              HCPUSING VPABK,GSBVPA,GSBBK Address VPABK.
              USING RLMSG,VPAMSG          Address RLMSG.
  t*    HCPUSING RLMSG,VPAMSG,VPABK Address RLMSG.
              - HCPUSING can not be used for the RLMSG at this
              time, see 2T0K184.
 
 
  VPABK Control Block Content Top of page
 

 VPABK DSECT Top of page
Hex Dec Type/Val Lng Label (dup) Comments ---- ---- --------- ---- -------------- -------- 0000 0 Structure VPABK Virtual Page Array (Guest Relocation) This area is the header information. This is transmitted from the source system to the destination system. 0000 0 Signed 4 VPAHEAD (0) Start of VPA Header. VPAMSG is mapped by RLMSG DSECT in HCPRLMSG COPY. 0000 0 Dbl-Word 8 VPAMSG 0008 8 Signed 2 VPACURPS Number of the memory pass in progress 000A 10 Signed 2 VPAPGCNT Page Count. On the destination side, this will indicate the total number of entries in the VPARRAY, all of which are filled in. On the source side this will be used as a count of entries as they are filled in, while GSBPGCNT is the total number of entries. 000C 12 Signed 4 VPAASCID (0) Address space identifier. Consists of 2 halfword index fields. A value of negative one indicates base space. (See also RLOASCID). 000C 12 Signed 2 VPAAIDOF ASCBK ID offset. Offset into VDISK location table. 000E 14 Signed 2 VPAAIDIN ASCBK ID index. Index into the VDIBK to get the entry for the corresponding address space. 0010 16 Dbl-Word 8 * (2) Reserved 00000020 VPAHDSZB *-VPAHEAD Size of VPAHEAD in bytes. 00000004 VPAHDSZD (VPAHDSZB+7)/8 Size of VPAHEAD in double words. - VPAL is the list of Virtual Page Address List Entries. - Each virtual page address list entry is mapped by VPALE DSECT. - This section is transmitted from the source system to the destination system. - It is variable length in size. On the destination side, its length is defined by VPAPGCNT. On the source side, its length is defined by GSBPGCNT, while VPAPGCNT is a running count of entries as they are processed. 0020 32 Dbl-Word 8 VPARRAY (0) Beginning of the Virtual Page Array. Virtual Page Address List Entry (transmitted) Format of double word 0 1 2 3 4 5 6 0123456789012345678901234567890123456789012345678901234567890123 xdzebncstttttttt******************************--------uuaaaafrc- PDESA---VPAXTIME PDESC---PDESD--- x = Page was in xstore on the source system d = Page was on DASD on the source system z = z bit (page logically 0) (no page contents transmitted) e = page in error bit (no page contents transmitted) b = Host backup change bit. n = Host backup reference bit. c = Content sent. 1=Content sent. 0=No content sent. s = Segment z bit. Segment is logically zero. tttttttt = 8 bit timestamp for XSTORE hint information. bits 17-24 of the XSTORE timestamp (delta from TOD). u = PGSUS a = key access bits f = key fetch protect bit r = guest-view reference bit c = guest-view change bit - = reserved for future use Format of double word 1 1 2 3 4 5 6 0123456789012345678901234567890123456789012345678901234567890123 vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv------------ v = Virtual Page address bits - = reserved for future use
 VPALE DSECT Top of page
Hex Dec Type/Val Lng Label (dup) Comments ---- ---- --------- ---- -------------- -------- 0000 0 Structure VPALE Virtual Page Array (Guest Relocation) 0000 0 Bitstring 8 VPADATA Virtual Page Data (State, etc.) 0008 8 Address 8 VPAVPADR Virtual Page address. 00000010 VPAAESZB *-VPALE Size of 1 VPALE in bytes. 00000002 VPAAESZD (VPAAESZB+7)/8 Size of 1 VPALE in double words. 0000 0 Bitstring 1 VPAPDESA Page description flag byte A A page that is resident on the source system is recognized by having VPASRCX, VPASRCD, VPAVPGZ, and VPAVPGE off. 1... .... VPASRCX X'80' VPASRCX Page is in XSTORE on the source system. .1.. .... VPASRCD X'40' VPASRCD Page is on DASD on the source system. ..1. .... VPAVPGZ X'20' VPAVPGZ Page logically 0 (no page contents buffer transmitted) ...1 .... VPAVPGE X'10' VPAVPGE Page in error (no page contents buffer transmitted) .... 1... VPAHBR X'08' VPAHBR Host backup reference bit. .... .1.. VPAHBC X'04' VPAHBC Host backup change bit. .... ..1. VPACTENT X'02' VPACTENT Content bit. Source system: Set to indicate corresponding real buffer address has a non-zero address. Destination system: Indicates if content was sent for this virtual page address. .... ...1 VPASEGZ X'01' VPASEGZ The seqment beginning at the virtual page address is invalid. 0001 1 Bitstring 1 VPAXTIME Delta timestamp for XSTORE. 0002 2 Bitstring 1 * (4) Bits 16-47 Reserved for future use. 0006 6 Bitstring 1 VPAPDESC Page description flag byte C 1... .... VPAIBR X'80' VPAIBR Page is invalid but resident (may be on aging list or UFO) Source system: Used only on source. Destination system: Not used .... ..1. VPAUS0 X'02' VPAUS0 .... ...1 VPAUS1 X'01' VPAUS1 .... ..11 VPAUS VPAUS0+VPAUS1 VPAUS 0007 7 Bitstring 1 VPAPDESD Page description flag byte D 1111 .... VPAACC X'F0' VPAACC Access bits of storage key. .... 1... VPAVPGF X'08' Fetch protect bit of storage key. .... .1.. VPAVPGVR X'04' Guest View reference bit .... ..1. VPAVPGVC X'02' Guest View change bit 00FFFFFF VPAMAXGPH X'FFFFFFFF' Max guest page that can 00FFF000 VPAMAXGPL X'FFFFF000' exist for a guest to be eligible for relocation.
 
 
  VPABK Storage Layout Top of page
 
 
*** VPABK - Virtual Page Array (Guest Relocation)
*
*     +-------------------------------------------------------+
*   0 |                        VPAMSG                         |
*     +-------------+-------------+-------------+-------------+
*   8 |  VPACURPS   |  VPAPGCNT   |  VPAAIDOF   |  VPAAIDIN   |
*     +-------------+-------------+-------------+-------------+
*  10 |///////////////////////////////////////////////////////|
*     |///////////////////////////////////////////////////////|
*     +-------------------------------------------------------+
*
*** VPABK - Virtual Page Array (Guest Relocation)
 
*** VPALE - Virtual Page Array (Guest Relocation)
*
*     +-------------------------------------------------------+
*   0 |                       VPADATA                         |
*     +-------------------------------------------------------+
*   8 |                       VPAVPADR                        |
*     +-------------------------------------------------------+
*  10
*
*** VPALE - Virtual Page Array (Guest Relocation)
 
*** Overlay for VPADATA in VPALE
*
*     +------+------+---------------------------+------+------+
*   0 |:PDESA|:XTIME|///////////////////////////|:PDESC|:PDESD|
*     +------+------+---------------------------+------+------+
*   8
*
*** Overlay for VPADATA in VPALE
 
 
  VPABK Cross Reference Top of page
 
 
Symbol         Dspl Value
-------------- ---- -----
VPAACC         0007 F0
VPAAESZB       0008 00000010
VPAAESZD       0008 00000002
VPAAIDIN       000E
VPAAIDOF       000C
VPAASCID       000C
VPACTENT       0000 02
VPACURPS       0008
VPADATA        0000
VPAHBC         0000 04
VPAHBR         0000 08
VPAHDSZB       0010 00000020
VPAHDSZD       0010 00000004
VPAHEAD        0000
VPAIBR         0006 80
VPAMAXGPH      0007 00FFFFFF
VPAMAXGPL      0007 00FFF000
VPAMSG         0000
VPAPDESA       0000
VPAPDESC       0006
VPAPDESD       0007
VPAPGCNT       000A
VPARRAY        0020
VPASEGZ        0000 01
VPASRCD        0000 40
VPASRCX        0000 80
VPAUS          0006 03
VPAUS0         0006 02
VPAUS1         0006 01
VPAVPADR       0008
VPAVPGE        0000 10
VPAVPGF        0007 08
VPAVPGVC       0007 02
VPAVPGVR       0007 04
VPAVPGZ        0000 20
VPAXTIME       0001
 
This information is based on z/VM 6.4.0 Last updated on 24 Aug 2016 at 09:45:13 EDT.
Copyright IBM Corporation, 1990, 2016