PGS64 Back to Index page
 
Prolog 
Control Block Contents 
   PGS64 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.

 
  PGS64 Control Block Content Top of page
 

 PGS64 DSECT Top of page
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 PGS64W0 start - Word 0 of PGSTE PGSGVKEY - Byte 0 (Architected) 0000 0 Bitstring 1 PGSGVKEY Guest Storage key bits 0-4 1111 .... PGSVKACC X'F0' PGSVKACC Access-control key value .... 1... PGSVKFET X'08' PGSVKFET Fetch-protection control 1111 1... PGSVKACF PGSVKACC+PGSVKFET PGSVKACF Acc-ctrl & fetch-prot bits PGSGRCP - Byte 1 (Architected) 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' 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. Note that when setting this bit or when resetting it and turning on the PGSZBIT bit, the relocation change bit, PGSLGRCC needs to be turned on. .11. .... PGSHOST PGSRCPHR+PGSRCPHC PGSHOST Mask for host bits ...1 .... PGSLGRCC X'10' PGSLGRCC VMRELOCATE Content Change bit. Initialized to one. Changed only when holding PCLONLY or SHORT (including ERRSHORT). Known in architecture as PGSHCB. .... .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 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 Note that the Page Control Lock and the RCP Interlock bit are one in the same if the Storage Key Assist is being utilized. PGSGFLAG - Byte 2 0002 2 Bitstring 1 PGSGFLAG 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) For a system utility space, 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 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 PGSGSTAT - Byte 3 0003 3 Bitstring 1 PGSGSTAT Virtual Page Status bits 1... .... PGSALTPT X'80' PGSALTPT For a target PTE, indicates the definition of the page is in alternate page table pointed to by PGMGALTP. For a source PTE, indicates data was saved for the page. Source PTEs can be distinguished from target PTEs by PGMGALTP being 0. PGSALTPT must be turned off when assigning differentiated page contents to the target PTE. .1.. .... PGSPCL2 X'40' PGSPCL2 Page serialization bit. See serialization section of prolog for more information. ..1. .... PGSLTSER X'20' PGSLTSER Page is "Long Term Serialized". May only be on if PGSPCL2 is also on (though PGSPCL may be on as well) .... .... PGSXSTOR X'00' PGSXSTOR Page is in XSTORE .... .1.. PGSBLOCK X'04' PGSBLOCK This page is one page in a block of pages .... ..1. PGSRABI X'02' PGSRABI 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. RABI pages are made IBR when added to the frame list. .... ...1 PGSERROR X'01' PGSERROR 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 - Word 1 of PGSTE PGSBYTE 4 Additional status bits (Architected) 0004 4 Bitstring 1 PGSBYTE4 Byte 4 of page status entry 1... .... PGSZBIT X'80' PGSZBIT Page-content-logically zero bit Only meaningful when the PTE is invalid. .1.. .... PGSNT X'40' PGSNT Guest no translation. When ON the guest page does not contain any DAT structures. ..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 PGAOVFLW in the PGAUX). 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. Before setting PGSOVFLW, PGAUX should be cleared to ensure no residual data is present. .... 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 PGSBYTE 5 Additional status bits (Architected) 0005 5 Bitstring 1 PGSBYTE5 Byte 5 of page status entry 1... .... PGSIBR X'80' PGSIBR Page is in IBR section of UFO The PTE associated with the frame is likely to be invalid; however, it may be a valid PTE whose frame has not yet been moved to the active section of the frame list. .1.. .... PGSAGING X'40' PGSAGING Frame/FRMTE is on the system's global IBR aging list ...1 .... PGSPN0 X'10' PGSPN0 .... 1... PGSPN1 X'08' PGSPN1 ...1 1... PGSPN PGSPN0+PGSPN1 PGSPN Two-bit code PGSBYTE 6 Additional status bits 0006 6 Bitstring 1 PGSBYTE6 Byte 6 of page status entry >>PGSCMDLK was FRMCPLOK 1... .... PGSCPLOK X'80' PGSCPLOK 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' PGSD98LK 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. .... PGSEWRTC X'20' PGSEWRTC Page contents were written to DASD during the "early write" phase of being on the Aging List; reason for write was the page was changed ...1 .... PGSEWRTM X'10' PGSEWRTM Page contents were written to DASD during the "early write" phase of being on the Aging List; reason for write was not the change bits (bad mload, drained, etc) .... 1... PGSAGRCL X'08' PGSAGRCL Page is on the Aging List ready to be reclaimed (that is, it is below the early write pointer) .... ..1. PGSALIAS X'02' PGSALIAS 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' PGSOVFL1 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 PGAOVFLW (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. 0004 4 Signed 4 PGSPPDBK Address of PPDBK for paged PGMBK. Note that the PPDBK address is a 31-bit address, occupying bits 1-31 of this word. Note that PGSZBIT is meaningless and irrelevant for PTRM pages. Valid only in invalid PTRM PGSTE, when PGMBK is on DASD, or as a transient condition when the PGMBK may be headed to DASD.
 
 
  PGS64 Storage Layout Top of page
 
          
*** 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
          
*** Overlay for PGS64W1 in PGS64
*
*                                 +---------------------------+
*   0 ...                       4 |         PGSPPDBK          |
*                                 +---------------------------+
*   8
*
*** Overlay for PGS64W1 in PGS64
 
 
  PGS64 Cross Reference Top of page
 
 
Symbol         Dspl Value
-------------- ---- -----
PGSAGING       0005 40
PGSAGRCL       0006 08
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
PGSEWRTC       0006 20
PGSEWRTM       0006 10
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
PGSIBR         0005 80
PGSINVAL       0002 80
PGSLGRCC       0001 10
PGSLTSER       0003 20
PGSNT          0004 40
PGSOVFLW       0004 10
PGSOVFL1       0006 01
PGSPCL         0001 80
PGSPCL2        0003 40
PGSPGMIM       0002 00000400
PGSPGMIO       0002 04
PGSPINCT       0007
PGSPN          0005 18
PGSPN0         0005 10
PGSPN1         0005 08
PGSPPDBK       0004
PGSPRBN        0002 02
PGSPROCL       0004 08
PGSRABI        0003 02
PGSRCPHC       0001 20
PGSRCPHR       0001 40
PGSREADO       0002 01
PGSSHARE       0002 40
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 00
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 7.3.0 Last updated on 22 Jun 2022 at 15:57:53 EDT.
Copyright IBM Corporation, 1990, 2022