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

RCPTE

Prolog  

Control Block Contents  
   RCPTE DSECT

Storage Layout  

Cross Reference (Contains links to field and bit definitions)  


RCPTE Prolog

 NAME       : HCPRCPTE
 DESCRIPTION: REFERENCE AND CHANGE PRESERVATION TABLE ENTRY
 DSECT      : RCPTE
 FUNCTION   : A REFERENCE AND CHANGE PRESERVATION TABLE ENTRY
              IS USED TO KEEP TRACK OF THE REFERENCE AND
              CHANGE BITS FOR A 4K PAGE OF VIRTUAL STORAGE.
 LOCATED BY : THERE ARE NO POINTERS TO RCP TABLE ENTRIES IN THE
              SYSTEM. THESE ENTRIES MAY RESIDE IN ONE OF THREE
              PLACES:
              1) A RESIDENT RCP PAGE (MAPPED THROUGH THE HOST
              VIRTUAL ADDRESS SPACE),
              2) THE RCP BACKUP AREA IN THE PGMBK, OR
              3) THE PGSTES CORRESPONDING TO THE PAGES THE RCP
              DATA REPRESENTS.
 CREATED BY :
              HCPHTTCP - RCP PAGES ARE BUILT WHEN SIE PAGE FAULTS
              ON AN RCP PAGE.
              HCPRCIRS - MOVES RCP DATA FROM THE RCP PAGE TO THE
              RCP BACKUP AREA.
 DELETED BY : HCPHPKPA - THE RCP AREA IS CLEARED WHEN THE VIRT STG
              IS RESET. AN RCP PAGE MAY BE STOLEN BUT THE ACTUAL
              RCP TABLE WILL EXIST UNTIL THE PGMBK IS RELEASED.
              WHEN AN RCP PAGE IS STOLEN, THE BYTES ARE BACKED
              UP IN THE CORRESPONDING PGMBKS BY HCPRCISA.
 RELOCATION CONSIDERATIONS : None
 COMMENTS   :
              - RCP DATA CORRESPONDING TO SYSTEM VIRTUAL PAGES
              WILL ALWAYS RESIDE IN THE PGSTES.
              - IF THE STORAGE KEY ASSIST IS BEING UTILIZED:
              - THE ARCHITECTURE DEFINES THE PGSRCP FIELDS
              AS THE LOCATION OF THE RCP DATA.
              - ALL RCP DATA IS SUSCEPTIBLE TO CHANGE BY THE
              STORAGE KEY ASSIST IF THE RCP INTERLOCK BIT IS
              NOT SET (RCP INTERLOCK BIT SERIALIZES CP AGAINST
              THE STORAGE KEY ASSIST AND VICE VERSA).
              - IF THE STORAGE KEY ASSIST IS NOT BEING UTILIZED
              - THE RCP AREA FOR A GUEST MACHINE CONTAINS ONE
              PAGE IN HOST VIRTUAL STORAGE FOR EACH 16 MEG OF
              GUEST STORAGE, STARTING AT THE HOST VIRTUAL
              ADDRESS CONTAINED IN 'VMDRCP'.  THE RCP PAGES
              ARE CONTAINED IN THE HOST ADDRESS SPACE USED
              TO DESCRIBE GUEST STORAGE, BUT THE RCP AREA
              IS NOT DIRECTLY ADDRESSABLE BY THE GUEST.
              - IF THE RCP AREA PAGE IS MARKED INVALID IN THE
              HOST PAGE TABLE, THE RCP BYTE APPEARS IN THE PAGE
              MANAGEMENT BLOCK (PGMBK) WHICH REPRESENTS THAT
              MEGABYTE OF GUEST STORAGE, STARTING AT PGMRCPTB.
              - ONLY THE RCP DATA RESIDING IN THE RCP PAGE IS
              SUSCEPTIBLE TO CHANGE BY THE SIE MICROCODE. IF
              THE RCP DATA RESIDES IN THE PGMBK, SIE WILL NOT
              BE ABLE TO CHANGE IT.
              - SHARED STORAGE RCP DATA IS ALWAYS KEPT IN THE
              RCP BACKUP AREA.

 

RCPTE Control Block Content


RCPTE DSECT

Hex   Dec Type/Val   Lng Label (dup)    Comments
---- ---- --------- ---- -------------- --------
0000    0 Structure      RCPTE          REFERENCE AND CHANGE PRESERVATION TABLE ENTRY
             THIS CONTROL BLOCK DEFINES AN RCP BYTE
             (REFERENCE AND CHANGE PRESERVATION).
             THE FIELD IS DEFINED BY PROCESSOR ARCHITECTURE.
             DO NOT MODIFY THIS FIELD EXCEPT TO INSTALL
             ARCHITECTURE CHANGES.
0000    0 Bitstring    1 RCPBYTE        HARDWARE RCP BYTE FOR ONE 4K PAGE
          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
             THE RCP (REFERENCE AND CHANGE PRESERVATION) AREA
             IS USED TO ALLOW THE HARDWARE REFERENCE AND CHANGE
             BITS FOR A SINGLE REAL PAGE TO RECORD REFERENCE AND
             CHANGE INFORMATION FOR USE BY BOTH THE GUEST AND
             BY THE HOST.
             WHENEVER THE HARDWARE EMULATES A GUEST SET STORAGE
             KEY (SSK) INSTRUCTION, THE OLD VALUE OF THE R/C BITS
             FROM THE REAL PAGE ARE OR'ED INTO THE HOST
             R/C BITS IN THE RCP AREA, THEN THE REAL R/C BITS
             ARE SET TO ZERO, AND THE NEW GUEST R/C BITS ARE
             PLACED IN THE RCP BYTE GUEST R/C BITS.
             WHEN THE HARDWARE EMULATES A GUEST RESET REFERENCE
             BIT (RRB) INSTRUCTION, THE CONDITION CODE IS
             DETERMINED FROM THE LOGICAL OR OF THE R/C BITS IN
             THE REAL PAGE WITH THE GUEST R/C BITS FROM THE
             RCP AREA BYTE FOR THAT PAGE.  THE OLD VALUE OF THE
             REFERENCE BIT IN THE REAL PAGE IS OR'ED INTO THE
             HOST BACKUP REFERENCE BIT IN THE RCP AREA BYTE, AND
             THE REAL PAGE REFERENCE BIT PLUS THE GUEST BACKUP
             REFERENCE BIT IN THE RCP BYTE ARE SET TO ZERO.
             WHEN THE HARDWARE EMULATES A GUEST INSERT STORAGE
             KEY INSTRUCTION, THE GUEST IS GIVEN THE KEY FROM
             REAL STORAGE, PLUS THE R/C BITS FROM THE REAL PAGE
             OR'ED WITH THE GUEST BACKUP R/C BITS FROM THE RCP
             AREA BYTE FOR THAT PAGE.
             WHEN SOFTWARE MODIFIES THE R/C BITS IN REAL STORAGE
             WHICH REPRESENTS A GUEST PAGE, THE SOFTWARE WILL
             LOGICALLY OR THE R/C BITS FROM REAL STORAGE INTO
             THE GUEST BACKUP R/C BITS FOR THAT PAGE PRIOR TO
             MODIFYING THE REAL STORAGE R/C BITS.
             IN ORDER THAT ONLY ONE CPU IS ACCESSING A PARTICULAR
             RCP AREA BYTE AT A TIME (EITHER BY EMULATION
             HARDWARE OR BY SOFTWARE SIMULATION), A LOCK BIT IS
             DEFINED IN THE RCP AREA BYTE.  PRIOR TO STARTING
             ANY OPERATION INVOLVING THE RCP AREA, A LOCK IS
             OBTAINED ON THE RCP AREA BYTE BY ATTEMPTING TO
             COMPARE-AND-SWAP THE LOCK BIT ON.  IF THE HARDWARE
             EMULATION FACILITY IS UNABLE TO OBTAIN THE LOCK,
             THE INSTRUCTION WILL BE PRESENTED TO SOFTWARE AS
             AN INSTRUCTION INTERCEPTION.
0001    1 Bitstring    1 RCPNEXT (0)    NEXT RCP BYTE (ONLY TO BE USED IF
                                        THE STORAGE KEY ASSIST IS NOT
                                        BEING UTILIZED)

 

RCPTE Storage Layout

          
*** RCPTE - REFERENCE AND CHANGE PRESERVATION TABLE ENTRY
*
*     +------+
*   0 |:BYTE |
*     +------+
*
*** RCPTE - REFERENCE AND CHANGE PRESERVATION TABLE ENTRY

 

RCPTE Cross Reference

Symbol         Dspl Value
-------------- ---- -----
RCPBYTE        0000
RCPGCH         0000 02
RCPGREF        0000 04
RCPGUEST       0000 06
RCPHCH         0000 20
RCPHOST        0000 60
RCPHREF        0000 40
RCPLOCK        0000 80
RCPNEXT        0001

This information is based on z/VM V6R2.0. Last updated on 21 Nov 2011 at 11:31:41 EDT.
Copyright IBM Corporation, 1990, 2011