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        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. Can be changed
                                        with PCLONLY page serialization
                                        by tasks allowed to use PCLONLY.
                                        Set by page fault fastpath.
          .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
      Note that the Page Control Lock and the RCP Interlock
      bit are one in the same if the Storage Key Assist is
      being utilized.
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 >>PGSPGMIO was
                                        PGSIO1ST, PGSIO2ND
          .... .1..      PGSPGMIO       X'04' 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
          00000400       PGSPGMIM       (PGSPGMIO)*256 >>PGSPRBN
                                        moved from PGSGSTAT
          .... ..1.      PGSPRBN        X'02' ASA is, in fact, a PRBN
                                        (pool- relative block number)
          .... ...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.. ....      PGSPCL2        X'40' Page serialization bit. See
                                        serialization section of prolog
                                        for more information.
          ..1. ....      PGSLTSER       X'20' Page is "Long Term
                                        Serialized". May only be on if
                                        PGSPCL2 is also on (though PGSPCL
                                        may be on as well)
          ..1. ....      PGSTRANS       PGSLTSER Deprecated
          .... 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. See serialization
                                        section of the prolog for role
                                        this bit plays in page
                                        serialization. When this bit is
                                        set, VMDRSSFG.VMDRSSUE must be
                                        set in the VMDBK that owns the
                                        space.
      PGS64W1 start
      PGSBYTE 4 Additional status bits
0004    4 Bitstring    1 PGSBYTE4       Byte 4 of page status entry
          1... ....      PGSZBIT        X'80' Page-content-logically zero
                                        bit Only meaningful when the PTE
                                        is invalid.
          ..1. ....      PGSCLASS       X'20' 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' 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' 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.
          .... .1..      PGSCONRP       X'04' 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'
          .... ...1      PGSUS1         X'01'
          .... ..11      PGSUS          PGSUS0+PGSUS1
          .... ....      PGSUSS         0
          .... ...1      PGSUSU         1
          .... ..1.      PGSUSP         2
          .... ..11      PGSUSV         3
      PGSBYTE 5 Additional status bits
0005    5 Bitstring    1 PGSBYTE5       Byte 5 of page status entry
                                        Reserved for IBM use
      PGSBYTE 6 Additional status bits
0006    6 Bitstring    1 PGSBYTE6       Byte 6 of page status entry
                                        >>PGSCMDLK was FRMCPLOK
          1... ....      PGSCPLOK       X'80' A pageable page is locked
                                        in the frame (pinned) by the CP
                                        LOCK command, one increment of
                                        the total pin count represents
                                        the CP LOCK command lock.
                                        >>PGSD98LK was PGSVMSLK
          .1.. ....      PGSD98LK       X'40' A pageable page is locked
                                        in the frame (pinned) at Virtual
                                        Machine request via Diagnose
                                        x'98', one increment of the total
                                        pin count represents the Diagnose
                                        x'98' Virtual Machine lock.
          .... ..1.      PGSALIAS       X'02' Guest page has an SXS
                                        alias. This bit can only be
                                        tested if PAGGINVA is not set;
                                        i.e. the PTE must be valid.
          .... ...1      PGSOVFL1       X'01' A one bit pin count
                                        overflow count bit. Used to hold
                                        one pin count out of PGSPINCT to
                                        control hardware interception.
                                        PTE must be valid. Can be
                                        modified with PCLONLY page
                                        serialization by tasks allowed to
                                        use PCLONLY. Turned on/off by
                                        pin/unpin fastpaths, translation
                                        paths, and no-owned functions.
                                        Also turned on by HCPTRANS
                                        HOSTTYPE=LOGICAL, TRANSLATE=NO,
                                        LOCK=YES of a no-owned page that
                                        wasn't locked or pinned but was
                                        last translated. Gets turned off
                                        in edge-triggered cases.
0007    7 Bitstring    1 PGSPINCT       Pin Count. Represents the number
                                        of pins (page locks) visible to
                                        hardware. If PGSOVFLW is set,
                                        does not represent the true total
                                        pin count. Additional pin count
                                        values are held in PGSOVFL1 (a
                                        one bit pin overflow count used
                                        to control hardware interception)
                                        and ASAOVFLW (a halfword pin
                                        overflow count where each "1"
                                        increment represents 128 pin
                                        count increments). PTE must be
                                        valid. Can be modified with
                                        PCLONLY page serialization by
                                        tasks allowed to use PCLONLY.
                                        Turned on/off by pin/unpin
                                        fastpaths, translation paths, and
                                        no-owned functions.
      PGS64W1 end
      Redefinition of PGSGSTAT for Pageable PGMBK (PTRM) pages
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|:BYTE4|:BYTE5|:BYTE6|:PINCT|
*     +------+------+------+------+------+------+------+------+
*   8
*
*** 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
-------------- ---- -----
PGSALIAS       0006 02
PGSALLOC       0002 10
PGSALTPT       0003 80
PGSBLOCK       0003 04
PGSBYTE4       0004
PGSBYTE5       0005
PGSBYTE6       0006
PGSCLASS       0004 20
PGSCONRP       0004 04
PGSCPLOK       0006 80
PGSD98LK       0006 40
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
PGSLTSER       0003 20
PGSOVFLW       0004 10
PGSOVFL1       0006 01
PGSPCL         0001 80
PGSPCL2        0003 40
PGSPGMIM       0002 00000400
PGSPGMIO       0002 04
PGSPINCT       0007
PGSPRBN        0002 02
PGSPROCL       0004 08
PGSRABI        0003 02
PGSRCPHC       0001 20
PGSRCPHR       0001 40
PGSREADO       0002 01
PGSSHARE       0002 40
PGSTRANS       0003 20
PGSUS          0004 03
PGSUSP         0004 02
PGSUSS         0004 00
PGSUSU         0004 01
PGSUSV         0004 03
PGSUS0         0004 02
PGSUS1         0004 01
PGSVKACC       0000 F0
PGSVKACF       0000 F8
PGSVKFET       0000 08
PGSXSTMB       0003 02
PGSXSTOR       0003 08
PGSZBIT        0004 80
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 V5R2.0. Last updated on 12 Apr 2006 at 17:39:46 EDT.
Copyright IBM Corporation, 1990, 2005