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

#### PGS64

Prolog

Control Block Contents
PGS64 DSECT

Storage Layout

Cross Reference (Contains links to field and bit definitions)

#### PGS64 Control Block Content

#### PGS64 DSECT

    Hex   Dec Type/Val   Lng Label (dup)    Comments
    ---- ---- --------- ---- -------------- --------
    0000    0 Structure      PGS64          PAGE STATUS TABLE ENTRY
    0000    0 Dbl-Word     8 PGSGENTR       Virtual Page Status Entry
    0000    0 Signed       4 PGS64W0        Mirror of ESA/390 PGSTE
    0004    4 Signed       4 PGS64W1        Reserved for IBM use
              00000008       PGSGLENT       *-PGSGENTR Length of one Status
                                            Table Entry
    0008    8 Signed       4 PGSGNEXT (0)   Next Page Status Table Entry
    0000    0 Bitstring    1 PGSGVKEY       Guest Storage key bits 0-4
              1111 ....      PGSVKACC       X'F0' Access-control key value
              .... 1...      PGSVKFET       X'08' Fetch-protection control
              1111 1...      PGSVKACF       PGSVKACC+PGSVKFET Acc-ctrl &
                                            fetch-prot bits
    0001    1 Bitstring    1 PGSGRCP        Architected area for RCP byte if
                                            storage key assist is being
                                            utilized, or the page belongs to
                                            the system.
              1... ....      PGSPCL         X'80' Page Control Lock
              .1.. ....      PGSRCPHR       X'40' Host backup reference bit
                                            used for system pages
              ..1. ....      PGSRCPHC       X'20' Host backup change bit used
                                            for system pages
              .11. ....      PGSHOST        PGSRCPHR+PGSRCPHC Mask for host
                                            bits
              .... .1..      PGSGREF        X'04' Guest backup reference bit
              .... ..1.      PGSGCH         X'02' Guest backup change bit
              .... .11.      PGSGUEST       PGSGREF+PGSGCH Mask for guest
                                            bits
              1... ....      RCPLOCK        X'80' RCP LOCK HELD
              .1.. ....      RCPHREF        X'40' HOST BACKUP REFERENCE BIT
              ..1. ....      RCPHCH         X'20' HOST BACKUP CHANGE BIT
              .11. ....      RCPHOST        RCPHREF+RCPHCH MASK FOR HOST BITS
              .... .1..      RCPGREF        X'04' GUEST BACKUP REFERENCE BIT
              .... ..1.      RCPGCH         X'02' GUEST BACKUP CHANGE BIT
              .... .11.      RCPGUEST       RCPGREF+RCPGCH MASK FOR GUEST
                                            BITS
         PGSPCL is used for page serialization. This bit (and therefore page
         serialization) may only be obtained through the use of the page
         serialization macros.
         Note that the Page Control Lock and the RCP Interlock bit are one in
         the same if the Storage Key Assist is being utilized.
         The bits PGSERROR and PGSTRANS are modifiers to the Page Control Lock.
         The following table identifies the meaning of the state of the Page
         Control Lock and it's modifiers:
     PGSPCL  PGSTRANS PGSERROR
         0 0 0 Lock available
         0 0 1 Invalid
         0 1 0 Invalid
         0 1 1 Invalid
         1 0 0 Lock held for short period, spin or skip
         1 0 1 Page in error, only 'release' can manipulate the page
         1 1 0 Lock held for long period, skip or defer. Will be redriven when
         lock is made available
         1 1 1 Invalid
    0002    2 Bitstring    1 PGSGFLAG       Virtual Page Flags
              1... ....      PGSINVAL       X'80' 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' Page is a shared page
              ..1. ....      PGS1READ       X'20' 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' 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' Storage slot permanently
                                            assigned
              .... .1..      PGSIO1ST       X'04' Indicate the first page of
                                            PGMBK has completed I/O.
                                            Serialized via PGSTRANS.
              .... ..1.      PGSIO2ND       X'02' Indicate the second page of
                                            PGMBK has completed I/O.
                                            Serialized via PGSTRANS.
              .... .11.      PGSIOFLG       PGSIO1ST+PGSIO2ND
              00000600       PGSIOMSK       (PGSIO1ST+PGSIO2ND)*256
              .... ...1      PGSREADO       X'01' Storage slot (DASD) is
                                            read-only
    0003    3 Bitstring    1 PGSGSTAT       Virtual Page Status bits
              1... ....      PGSALTPT       X'80' Page is defined in an
                                            alternate Page table pointed from
                                            PGMGALTP
              .1.. ....      PGSTRANS       X'40' Page is serialized in long
                                            term
              ..1. ....      PGSPRBN        X'20' ASA is, in fact, a PRBN
              ...1 ....      PGSVMSLK       X'10' Virtual machine storage
                                            lock mode
              .... 1...      PGSXSTOR       X'08' Page is in XSTORE
              .... .1..      PGSBLOCK       X'04' This page is one page in a
                                            block of pages
              .... ..1.      PGSRABI        X'02' This page was read in as
                                            part of a block of pages. This
                                            bit can NOT be checked for PTRM
                                            pages, as it is redefined as
                                            PGSXSTMB in that case.
              .... ...1      PGSERROR       X'01' Page is in error. A storage
                                            error was detected in this page
                                            and the page could not be
                                            recovered. When this bit is set,
                                            VMDRSSFG.VMDRSSUE must be set in
                                            the VMDBK that owns the space.
    0003    3 Bitstring    1 PGSGPSTA       Pageable PGMBK Virtual Page
                                            Status bits.
              .... ..1.      PGSXSTMB       X'02' This page (a pageable
                                            PGMBK) itself supports pages in
                                            XSTORE. This bit is only used for
                                            PTRM pages that currently reside
                                            in XSTORE (PGSXSTOR must also be
                                            on if PGSXSTMB is on). Note that
                                            this bit is a redefinition of the
                                            PGSRABI bit, which is acceptable
                                            since pageable PGMBKs (PTRM
                                            pages) are never blocked. .* .*

#### PGS64 Storage Layout

    *** PGS64 - PAGE STATUS TABLE ENTRY
    *
    *     +-------------------------------------------------------+
    *   0 |                       PGSGENTR                        |
    *     +-------------------------------------------------------+
    *   8
    *
    *** PGS64 - PAGE STATUS TABLE ENTRY

    *** Overlay for PGSGENTR in PGS64
    *
    *     +---------------------------+---------------------------+
    *   0 |         PGS64W0           |         PGS64W1           |
    *     +---------------------------+---------------------------+
    *
    *** Overlay for PGSGENTR in PGS64

    *** Overlay for PGS64W0 in PGS64
    *
    *     +------+------+------+------+
    *   0 |:GVKEY|:GRCP |:GFLAG|:GSTAT| 4
    *     +------+------+------+------+
    *
    *** Overlay for PGS64W0 in PGS64

    *** Overlay for PGSGSTAT in PGS64
    *
    *                          +------+
    *   0 ...                3 |:GPSTA| 4
    *                          +------+
    *
    *** Overlay for PGSGSTAT in PGS64

#### PGS64 Cross Reference

    Symbol         Dspl Value
    -------------- ---- -----
    PGSALLOC       0002 10
    PGSALTPT       0003 80
    PGSBLOCK       0003 04
    PGSERROR       0003 01
    PGSFIXED       0002 08
    PGSGCH         0001 02
    PGSGENTR       0000
    PGSGFLAG       0002
    PGSGLENT       0004 00000008
    PGSGNEXT       0008
    PGSGPSTA       0003
    PGSGRCP        0001
    PGSGREF        0001 04
    PGSGSTAT       0003
    PGSGUEST       0001 06
    PGSGVKEY       0000
    PGSHOST        0001 60
    PGSINVAL       0002 80
    PGSIOFLG       0002 06
    PGSIOMSK       0002 00000600
    PGSIO1ST       0002 04
    PGSIO2ND       0002 02
    PGSPCL         0001 80
    PGSPRBN        0003 20
    PGSRABI        0003 02
    PGSRCPHC       0001 20
    PGSRCPHR       0001 40
    PGSREADO       0002 01
    PGSSHARE       0002 40
    PGSTRANS       0003 40
    PGSVKACC       0000 F0
    PGSVKACF       0000 F8
    PGSVKFET       0000 08
    PGSVMSLK       0003 10
    PGSXSTMB       0003 02
    PGSXSTOR       0003 08
    PGS1READ       0002 20
    PGS64W0        0000
    PGS64W1        0004
    RCPGCH         0001 02
    RCPGREF        0001 04
    RCPGUEST       0001 06
    RCPHCH         0001 20
    RCPHOST        0001 60
    RCPHREF        0001 40
    RCPLOCK        0001 80

This information is based on z/VM V4R3.0. Last updated on 1 May 2002 at 10:59:24 EDT.
Copyright IBM Corporation, 1990, 2002