Programming Interface Information:
This information is NOT intended to be
used as Programming Interfaces of z/VM.

VPG64

Prolog  

Control Block Contents  
   VPG64 DSECT

Storage Layout  

Cross Reference (Contains links to field and bit definitions)  


 

VPG64 Control Block Content


VPG64 DSECT

Hex   Dec Type/Val   Lng Label (dup)    Comments
---- ---- --------- ---- -------------- --------
0000    0 Structure      VPG64          VIRTUAL PAGE BLOCK
0000    0 Dbl-Word     8 VPGGPAG        Page Table Entry
0008    8 Dbl-Word     8 VPGGNEXT (0)   Address for next VPGBK
0008    8 Dbl-Word     8 * (255)
0800 2048 Dbl-Word     8 VPGGPGS        Page Status Table Entry
0808 2056 Dbl-Word     8 * (255)
1000 4096 Dbl-Word     8 VPGGASA        Auxiliary Storage Address Entry
1008 4104 Dbl-Word     8 * (255)
        Mapping for a PAG64 (PTE)
0000    0 Dbl-Word     8 VPGGPTE (0)    VPGBK Page Table Entry
0000    0 Dbl-Word     8 VPGGPNTR       Hardware Page Table Entry
0000    0 Signed       4 VPGGPTE0       Word 0 of PTE
0004    4 Signed       4 VPGGPTE1       Word 1 of PTE
0000    0 Signed       2 VPGGPLNK       This field is used to point to
                                        the next free Page Table Entry
                                        available in this PGMBK (for non-
                                        Pageable PGMBK frames only -
                                        NPGM) which were previously
                                        deallocated.
0002    2 Signed       2 *              Reserved for IBM use
0004    4 Signed       4 *              Reserved for IBM use
0000    0 Signed       4 VPGGXSBN       Xstore block number if PTE is not
                                        valid and PGSXSTOR is b'1'
0004    4 Bitstring    1 VPGGXSTS (20)  Xstore time stamp (lowest 20
                                        bits)
0018   24 Bitstring    1 * (4)          Reserved for IBM use
001C   28 Bitstring    1 *              Reserved for IBM use
0000    0 Signed       4 *              Bits 0-31 of PFRA
0004    4 Signed       2 *              Bits 32-47 of PFRA
0006    6 Bitstring    1 VPGGPSTA       Bits 48-51 of PFRA For a
                                        valid-in-real-storage PTE, bits
                                        52 and 55 must be zero. Bits 53
                                        and 54 are Page-invalid and
                                        Page-protection, respectively.
          .... 1..1      PAGGSMBZ       X'09' PAGGSMBZ Must be zero in
                                        any valid PTE
          .... .1..      PAGGINVA       X'04' PAGGINVA PTE is invalid:
                                        I-bit. To turn off this bit,
                                        SHORT pg. serialization must be
                                        held unless the bit is being
                                        turned off by HPMA or by fastpath
                                        resolve which require only
                                        PCLONLY
          .... ..1.      PAGGPROT       X'02' PAGGPROT Page protected
                                        (read only): P-bit
          .... .1.1      PAGGSXVA       X'05' PAGGSXVA Page is invalid,
                                        but is valid in xstore This is a
                                        non-architected software
                                        definition.
0007    7 Bitstring    1 *              This byte is not architected and
                                        is available for software use. It
                                        is recommended that software
                                        refrain from using this byte
                                        unless it is to store the guest
                                        storage key.
0000    0 Dbl-Word     8 VPGGPSTE       Real address of guest's STE.
                                        Valid only in invalid PTRM PTE,
                                        when PGMBK is on DASD, or as a
                                        transient condition when the
                                        PGMBK may be headed to DASD.
        Mapping for a PGS64 (PGSTE)
0800 2048 Dbl-Word     8 VPGGPGST (0)   VPGBK Page Status Entry
0800 2048 Dbl-Word     8 VPGGSNTR       Virtual Page Status Entry
0800 2048 Signed       4 VPGGPGS0       Word 0 of PGSTE
0804 2052 Signed       4 VPGGPGS1       Word 1 of PGSTE
0800 2048 Bitstring    3 VPGGVRSF       Field containing VPGGSVKY,
                                        VPGGSRCP and VPGGSFLG
0803 2051 Bitstring    1 *              Reserved for IBM use
0800 2048 Bitstring    1 VPGGSVKY       Guest Storage Key Bits 0-4
0801 2049 Bitstring    1 VPGGSRCP       Architected area for RCP Byte If
                                        the storage key assist is being
                                        utilized. (See the PGSTE and
                                        RCPTE Control Blocks for further
                                        details)
          1... ....      RCPLOCK        X'80' RCPLOCK RCP LOCK HELD
          .1.. ....      RCPHREF        X'40' RCPHREF HOST BACKUP
                                        REFERENCE BIT
          ..1. ....      RCPHCH         X'20' RCPHCH HOST BACKUP CHANGE
                                        BIT
          .11. ....      RCPHOST        RCPHREF+RCPHCH RCPHOST MASK FOR
                                        HOST BITS
          .... .1..      RCPGREF        X'04' RCPGREF GUEST BACKUP
                                        REFERENCE BIT
          .... ..1.      RCPGCH         X'02' RCPGCH GUEST BACKUP CHANGE
                                        BIT
          .... .11.      RCPGUEST       RCPGREF+RCPGCH RCPGUEST MASK FOR
                                        GUEST BITS
          1... ....      PGSPCL         X'80' PGSPCL Page Control Lock
          .1.. ....      PGSRCPHR       X'40' PGSRCPHR Host backup
                                        reference bit used for system
                                        pages
          ..1. ....      PGSRCPHC       X'20' PGSRCPHC Host backup change
                                        bit used for system pages. Can be
                                        changed with PCLONLY page
                                        serialization by tasks allowed to
                                        use PCLONLY. Set by page fault
                                        fastpath.
          .11. ....      PGSHOST        PGSRCPHR+PGSRCPHC PGSHOST Mask
                                        for host bits
          .... .1..      PGSGREF        X'04' PGSGREF Guest backup
                                        reference bit
          .... ..1.      PGSGCH         X'02' PGSGCH Guest backup change
                                        bit
          .... .11.      PGSGUEST       PGSGREF+PGSGCH PGSGUEST Mask for
                                        guest bits
0802 2050 Bitstring    1 VPGGSFLG       Virtual Page Flags
          1... ....      PGSINVAL       X'80' PGSINVAL No auxiliary
                                        storage assigned Notes :
                                        PGSINVAL, in combination with
                                        other PTE, PGSTE, and storage key
                                        status bits, is used by steal
                                        processing to identify first time
                                        reference pages of zeros which
                                        have never been re-referenced or
                                        changed and can simply be
                                        discarded. The "first time
                                        reference page of zeros" state is
                                        identified by the following bit
                                        combination: noformat PTE:
                                        PAGINVAL=0 (page is valid and
                                        resident) PGSTE: PGSINVAL=1 (no
                                        DASD slot assigned) PGSRCPHR=0
                                        (unreferenced) PGSRCPHC=0
                                        (unchanged) Real frame storage
                                        key: Reference=0 (unreferenced)
                                        Change =0 (unchanged) enoformat
                                        Any resident page in this state
                                        is assumed to be unchanged zeros,
                                        and therefore simply discardable
                                        by steal. No page with non-zero
                                        contents should ever be allowed
                                        to be in this state, or a lost
                                        page will eventually result. The
                                        host change bit, PGSRCPHC, should
                                        be used to indicate that a page
                                        which is unchanged, not already
                                        on DASD, and non-zero, must be
                                        eventually written to DASD. *
                                        Note that both reference bits
                                        (PGSRCPHR and the real storage
                                        frame reference bit) can
                                        "evaporate" to zero over time due
                                        to the action of the reorder
                                        function. Therefore, the fact
                                        that a frame has been referenced,
                                        or setting PGSRCPHR on, can not
                                        prevent a page from eventually
                                        entering this "first time
                                        reference page of zeros" state.
          .1.. ....      PGSSHARE       X'40' PGSSHARE Page is a shared
                                        page
          ..1. ....      PGS1READ       X'20' PGS1READ ASA may be read
                                        only once. Used for shared pages.
                                        After the first read, this SDF
                                        (System Data File) ASA is to be
                                        ignored and the page left as
                                        changed. When the page is first
                                        written, it will go to a paging
                                        space ASA and this flag wil be
                                        turned off. PGS1READ on implies
                                        that page is read-only for the
                                        user.
          ...1 ....      PGSALLOC       X'10' PGSALLOC Page in the system
                                        address space (or a system-owned
                                        utility address space) that is
                                        allocated, OR A shared CP page in
                                        the monitor DCSS that CP has
                                        translated and that has not yet
                                        been released by the user
                                        connected to the DCSS. When this
                                        bit is on: 1) The page is never
                                        part of a DASD block; 2) The
                                        associated PGMBK is never paged
                                        out.
          .... 1...      PGSFIXED       X'08' PGSFIXED Storage slot
                                        permanently assigned
                                        >>PGSPGMIO was PGSIO1ST,
                                        PGSIO2ND
          .... .1..      PGSPGMIO       X'04' PGSPGMIO Indicates that
                                        pageable PGMBK I/O has not
                                        completed (PTRM page). Set when
                                        the first I/O completion
                                        interrupt is processed, reset
                                        when the second I/O completion
                                        interrupt is processed. Note the
                                        I/O can complete in either order.
                                        >>PGSPGMIM was PGSIOMSK
0803 2051 Bitstring    1 VPGGSSTA       Virtual Page Status bits
0803 2051 Bitstring    1 VPGGMSTA       Virtual Page (PGMBK) Status bits
0804 2052 Signed       4 *              Reserved
0804 2052 Bitstring    1 VPGGSB4        Virtual Page Status (Byte 4)
          1... ....      PGSZBIT        X'80' PGSZBIT
                                        Page-content-logically zero bit
                                        Only meaningful when the PTE is
                                        invalid.
          ..1. ....      PGSCLASS       X'20' PGSCLASS The page class
                                        specifies which
                                        Delta-pinned-page-count array is
                                        to be used in maintaining pinned
                                        page counts. Page class 0 (bit is
                                        0) specifies the DPPCA for base
                                        address space pages owned by
                                        user. Page class 1 (bit is 1)
                                        specifies NSS/DCSS imbedded
                                        shared pages. The page class 0
                                        DPPCA resides in the ASCBK and is
                                        pointed to by SIEDPPCAO in the
                                        format-2 state descriptor
                                        (SI2BK). The page class 1 DPPCA
                                        resides resides in RSMBK and is
                                        pointed to by PFXDPPCAO in the
                                        prefix area.
          ...1 ....      PGSOVFLW       X'10' PGSOVFLW The pin count
                                        (PGSPINCT) has overflowed and the
                                        current value does not represent
                                        the total pin count. The
                                        remainder of the total pin count
                                        is contained in both PGSOVFL1 (a
                                        one bit pin count overflow used
                                        to control hardware interception)
                                        and ASAOVFLW in the ASATE). PTE
                                        must be valid. Can be modified
                                        with PCLONLY page serialization
                                        by tasks allowed to use PCLONLY.
                                        Set by pin/unpin fastpaths,
                                        translation paths, and no-owned
                                        functions.
          .... 1...      PGSPROCL       X'08' PGSPROCL Indicates page is
                                        on the processed list. Turned on
                                        by machine or fast path
                                        processing when corresponding
                                        FRMTE is put on processed list.
                                        Turned off by HCPPLP processed
                                        list processing. Can be modified
                                        with PCLONLY page serialization
                                        by tasks allowed to use PCLONLY.
                                        Set by HPMA or fastpath validate
                                        page. See PFXPROCL definition
                                        comments in HCPPFXPG for
                                        additional rules regarding
                                        processed list usage and the
                                        setting of PGSPROCL.
          .... .1..      PGSCONRP       X'04' PGSCONRP Indicates a
                                        content-replacement operation
                                        occurred on an HPMA Resolve host
                                        page function. Can be modified
                                        with PCLONLY page serialization
                                        by tasks allowed to use PCLONLY.
                                        Set by HPMA or fastpath validate
                                        page.
          .... ..1.      PGSUS0         X'02' PGSUS0
          .... ...1      PGSUS1         X'01' PGSUS1
          .... ..11      PGSUS          PGSUS0+PGSUS1 PGSUS
          .... ....      PGSUSS         0 PGSUSS
          .... ...1      PGSUSU         1 PGSUSU
          .... ..1.      PGSUSP         2 PGSUSP
          .... ..11      PGSUSV         3 PGSUSV
0805 2053 Bitstring    1 VPGGSB5        Virtual Page Status (Byte 5)
0806 2054 Bitstring    1 VPGGSB6        Virtual Page Status (Byte 6)
0807 2055 Bitstring    1 VPGGSB7        VPS (Byte 7) - Pin Count
0804 2052 Signed       4 VPGGVMDB       Owning VMDBK address. Valid only
                                        in invalid PTRM PGSTE, when PGMBK
                                        is on DASD, or as a transient
                                        condition when the PGMBK may be
                                        headed to DASD.
        Mapping for a ASA64 (ASATE)
1000 4096 Dbl-Word     8 VPGGASAT (0)   VPGBK Aux Storage Address
1000 4096 Dbl-Word     8 VPGGANTR       Auxiliary Storage Address
1000 4096 Signed       4 VPGGASA0       Word 0 of ASATE
1004 4100 Signed       4 VPGGASA1       Word 1 of ASATE
1000 4096 Signed       2 VPGGACNM       Auxiliary Storage Cylinder Number
1002 4098 Bitstring    1 VPGGAPNM       Auxiliary Storage Page Number
1003 4099 Bitstring    1 VPGGAVOL       Auxiliary Storage Volume Code
1004 4100 Signed       4 VPGGPTRM       PTRM-specific data. Only valid in
                                        PTRM non-pageable PGM64s If
                                        PGSINVAL=b'0', then this is the
                                        ASA representing the second page
                                        of the PGM64 If PGSXSTOR=b'1',
                                        then this is the XSTORE block
                                        number representing the second
                                        page of the PGM64.
1004 4100 Signed       2 *              Reserved for IBM use
1006 4102 Signed       2 VPGGOVFL       Count of the number of 128 pin-
                                        count overflow increments. The
                                        pin count for a page is kept in
                                        PGSPINCT, which is only 1 byte in
                                        length. If that overflows,
                                        ASAOVFLW is incremented and
                                        represents 128 pins.

 

VPG64 Storage Layout

          
*** VPG64 - VIRTUAL PAGE BLOCK
*
*     +-------------------------------------------------------+
*   0 |                       VPGGPAG                         |
*     +-------------------------------------------------------+
*   8 |///////////////////////////////////////////////////////|
*     =///////////////////////////////////////////////////////=
*     |///////////////////////////////////////////////////////|
*     +-------------------------------------------------------+
* 800 |                       VPGGPGS                         |
*     +-------------------------------------------------------+
* 808 |///////////////////////////////////////////////////////|
*     =///////////////////////////////////////////////////////=
*     |///////////////////////////////////////////////////////|
*     +-------------------------------------------------------+
*1000 |                       VPGGASA                         |
*     +-------------------------------------------------------+
*1008 |///////////////////////////////////////////////////////|
*     =///////////////////////////////////////////////////////=
*     |///////////////////////////////////////////////////////|
*     +-------------------------------------------------------+
*1800
*
*** VPG64 - VIRTUAL PAGE BLOCK
          
*** Overlay for VPGGPAG in VPG64
*
*     +-------------------------------------------------------+
*   0 |                       VPGGPNTR                        |
*     +-------------------------------------------------------+
*   8
*
*** Overlay for VPGGPAG in VPG64
          
*** Overlay for VPGGPNTR in VPG64
*
*     +---------------------------+---------------------------+
*   0 |         VPGGPTE0          |         VPGGPTE1          |
*     +---------------------------+---------------------------+
*   8
*
*** Overlay for VPGGPNTR in VPG64
          
*** Overlay for VPGGPTE0 in VPG64
*
*     +-------------+-------------+---------------------------+
*   0 |  VPGGPLNK   |/////////////|///////////////////////////|
*     +-------------+-------------+---------------------------+
*   8
*
*** Overlay for VPGGPTE0 in VPG64
          
*** Overlay for VPGGPTE0 in VPG64
*
*     +---------------------------+---------------------------+
*   0 |         VPGGXSBN          |                           |
*     +---------------------------+                           |
*     |                       VPGGXSTS                        |
*     |                                                       |
*     +---------------------------+------+--------------------+
*  18 |///////////////////////////|//////| 1D
*     +---------------------------+------+
*
*** Overlay for VPGGPTE0 in VPG64
          
*** Overlay for VPGGPTE0 in VPG64
*
*     +---------------------------+-------------+------+------+
*   0 |///////////////////////////|/////////////|:GPSTA|//////|
*     +---------------------------+-------------+------+------+
*   8
*
*** Overlay for VPGGPTE0 in VPG64
          
*** Overlay for VPGGPTE0 in VPG64
*
*     +-------------------------------------------------------+
*   0 |                       VPGGPSTE                        |
*     +-------------------------------------------------------+
*   8
*
*** Overlay for VPGGPTE0 in VPG64
          
*** Overlay for VPGGPGS in VPG64
*
*     +-------------------------------------------------------+
* 800 |                       VPGGSNTR                        |
*     +-------------------------------------------------------+
* 808
*
*** Overlay for VPGGPGS in VPG64
          
*** Overlay for VPGGSNTR in VPG64
*
*     +---------------------------+---------------------------+
* 800 |         VPGGPGS0          |         VPGGPGS1          |
*     +---------------------------+---------------------------+
* 808
*
*** Overlay for VPGGSNTR in VPG64
          
*** Overlay for VPGGPGS0 in VPG64
*
*     +--------------------+------+
* 800 |     VPGGVRSF       |//////| 804
*     +--------------------+------+
*
*** Overlay for VPGGPGS0 in VPG64
          
*** Overlay for VPGGPGS0 in VPG64
*
*     +------+------+------+------+
* 800 |:GSVKY|:GSRCP|:GSFLG|:GSSTA| 804
*     +------+------+------+------+
*
*** Overlay for VPGGPGS0 in VPG64
          
*** Overlay for VPGGSSTA in VPG64
*
*                          +------+
* 800 ...              803 |:GMSTA| 804
*                          +------+
*
*** Overlay for VPGGSSTA in VPG64
          
*** Overlay for VPGGPGS1 in VPG64
*
*                                 +---------------------------+
* 800 ...                     804 |///////////////////////////|
*                                 +---------------------------+
* 808
*
*** Overlay for VPGGPGS1 in VPG64
          
*** Overlay for VPGGPGS1 in VPG64
*
*                                 +------+------+------+------+
* 800 ...                     804 |:GSB4 |:GSB5 |:GSB6 |:GSB7 |
*                                 +------+------+------+------+
* 808
*
*** Overlay for VPGGPGS1 in VPG64
          
*** Overlay for VPGGPGS1 in VPG64
*
*                                 +---------------------------+
* 800 ...                     804 |         VPGGVMDB          |
*                                 +---------------------------+
* 808
*
*** Overlay for VPGGPGS1 in VPG64
          
*** Overlay for VPGGASA in VPG64
*
*     +-------------------------------------------------------+
*1000 |                       VPGGANTR                        |
*     +-------------------------------------------------------+
*1008
*
*** Overlay for VPGGASA in VPG64
          
*** Overlay for VPGGANTR in VPG64
*
*     +---------------------------+---------------------------+
*1000 |         VPGGASA0          |         VPGGASA1          |
*     +---------------------------+---------------------------+
*1008
*
*** Overlay for VPGGANTR in VPG64
          
*** Overlay for VPGGASA0 in VPG64
*
*     +-------------+------+------+
*1000 |  VPGGACNM   |:GAPNM|:GAVOL| 1004
*     +-------------+------+------+
*
*** Overlay for VPGGASA0 in VPG64
          
*** Overlay for VPGGASA1 in VPG64
*
*                                 +---------------------------+
*1000 ...                    1004 |         VPGGPTRM          |
*                                 +---------------------------+
*1008
*
*** Overlay for VPGGASA1 in VPG64
          
*** Overlay for VPGGASA1 in VPG64
*
*                                 +-------------+-------------+
*1000 ...                    1004 |/////////////|  VPGGOVFL   |
*                                 +-------------+-------------+
*1008
*
*** Overlay for VPGGASA1 in VPG64

 

VPG64 Cross Reference

Symbol         Dspl Value
-------------- ---- -----
PAGGINVA       0006 04
PAGGPROT       0006 02
PAGGSMBZ       0006 09
PAGGSXVA       0006 05
PGSALLOC       0802 10
PGSCLASS       0804 20
PGSCONRP       0804 04
PGSFIXED       0802 08
PGSGCH         0801 02
PGSGREF        0801 04
PGSGUEST       0801 06
PGSHOST        0801 60
PGSINVAL       0802 80
PGSOVFLW       0804 10
PGSPCL         0801 80
PGSPGMIO       0802 04
PGSPROCL       0804 08
PGSRCPHC       0801 20
PGSRCPHR       0801 40
PGSSHARE       0802 40
PGSUS          0804 03
PGSUSP         0804 02
PGSUSS         0804 00
PGSUSU         0804 01
PGSUSV         0804 03
PGSUS0         0804 02
PGSUS1         0804 01
PGSZBIT        0804 80
PGS1READ       0802 20
RCPGCH         0801 02
RCPGREF        0801 04
RCPGUEST       0801 06
RCPHCH         0801 20
RCPHOST        0801 60
RCPHREF        0801 40
RCPLOCK        0801 80
VPGGACNM       1000
VPGGANTR       1000
VPGGAPNM       1002
VPGGASA        1000
VPGGASAT       1000
VPGGASA0       1000
VPGGASA1       1004
VPGGAVOL       1003
VPGGMSTA       0803
VPGGNEXT       0008
VPGGOVFL       1006
VPGGPAG        0000
VPGGPGS        0800
VPGGPGST       0800
VPGGPGS0       0800
VPGGPGS1       0804
VPGGPLNK       0000
VPGGPNTR       0000
VPGGPSTA       0006
VPGGPSTE       0000
VPGGPTE        0000
VPGGPTE0       0000
VPGGPTE1       0004
VPGGPTRM       1004
VPGGSB4        0804
VPGGSB5        0805
VPGGSB6        0806
VPGGSB7        0807
VPGGSFLG       0802
VPGGSNTR       0800
VPGGSRCP       0801
VPGGSSTA       0803
VPGGSVKY       0800
VPGGVMDB       0804
VPGGVRSF       0800
VPGGXSBN       0000
VPGGXSTS       0004

This information is based on z/VM V5R4.0. Last updated on 18 Feb 2010 at 04:24:56 EDT.
Copyright IBM Corporation, 1990, 2009