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

PSQBK

Prolog  

Control Block Contents  
   PSQBK DSECT

Storage Layout  

Cross Reference (Contains links to field and bit definitions)  


PSQBK Prolog

 NAME       : HCPPSQBK
 DESCRIPTION: LGR PTE Serialization Queue Block
 DSECT      : PSQBK
 FUNCTION   : Contains information regarding a PTE being
              processed during relocation of a guest.  PSQBKs
              represent PTEs for which:
              - PTE serialization was obtained asynchronously, or
              - PTE serialization still needs to be obtained.
 LOCATED BY : RLOPSQHD points to the head of the FIFO PSQBK queue
              RLOPSQTL points to the tail of the FIFO PSQBK queue
 CREATED BY : HCPRLMPS
 DELETED BY : HCPRLMPQ
 SERIALIZED : RLOPSQLK field in RLOBK.  Informal spin lock.
 RELOCATION CONSIDERATIONS : None
 COMMENTS   :
              A PSQBK describes a block in a FIFO queue that
              represents PTEs in one of the following states
              during the walk of the PGMBKs on the source
              system during relocation of a guest:
              - PTE serialization has been asynchronously
              obtained, or
              - PTE serialization still needs to be obtained
              but has been deferred because end-to-end
              throttling is in effect based on the value of
              the RLOE2ETH throttling indicator.
              During end-to-end throttling, we must:
              - Minimize the number of PTEs on which
              serialization is held, and
              - Minimize sending further relocation data
              to the destination system
              The queue is processed by HCPRLMPQ.  For each
              block, it removes the block from the head of the
              queue and effectively rejoins the synchronous
              LGR processing by calling HCPRLTRS unless throttling
              is in effect.  In that case, it releases any PTE
              serialization held and requeues the PSQBK as a PTE
              for which serialization is not held.
              Blocks are added to the queue in the following
              situations:
              - By HCPRLTPS, which is an asynchronous task
              that is stacked via HCPCALL TYPE=DEFERRED while
              walking the guest's DAT tables when SHORT PTE
              serialization is not available without deferral.
              - By HCPRLMPQ in throttling situations as previously
              described.
              - By HCPPODDQ in throttling situations to effectively
              requeue requests for PTE serialization after
              throttling is no longer in effect.
              The queue header is RLOPSQHD and the tail is
              RLOPSQTL.  End of queue is delimited by zero.

 

PSQBK Control Block Content


PSQBK DSECT

Hex   Dec Type/Val   Lng Label (dup)    Comments
---- ---- --------- ---- -------------- --------
0000    0 Structure      PSQBK          LGR PTE Serialization Queue Block
0000    0 Signed       4 PSQFPNT        Forward pointer
0004    4 Signed       4 PSQBPNT        Backward pointer
0008    8 Dbl-Word     8 * (0)
0008    8 Dbl-Word     8 PSQPTEAD       PTE Real address
0010   16 Signed       4 PSQPWIBK       PWIBK address
0014   20 Bitstring    1 PSQFLAGS       Flag byte
          1... ....      PSQHAVSR       X'80' PSQHAVSR PTE Serialization
                                        held on the page represented by
                                        this PSQBK
0015   21 Bitstring    1 * (3)
      End of PSQBK
0018   24 Signed       4 PSQ$END (0)    End of PSQBK control block
          00000018       PSQLEN         *-PSQBK Length of PSQBK in bytes
          00000003       PSQSIZE        (PSQLEN+7)/8 Size of PSQBK in
                                        doublewords

 

PSQBK Storage Layout

          
*** PSQBK - LGR PTE Serialization Queue Block
*
*     +---------------------------+---------------------------+
*   0 |         PSQFPNT           |         PSQBPNT           |
*     +---------------------------+---------------------------+
*   8 |                       PSQPTEAD                        |
*     +---------------------------+------+--------------------+
*  10 |         PSQPWIBK          |:FLAGS|////////////////////|
*     +---------------------------+------+--------------------+
*
*** PSQBK - LGR PTE Serialization Queue Block

 

PSQBK Cross Reference

Symbol         Dspl Value
-------------- ---- -----
PSQ$END        0018
PSQBPNT        0004
PSQFLAGS       0014
PSQFPNT        0000
PSQHAVSR       0014 80
PSQLEN         0018 00000018
PSQPTEAD       0008
PSQPWIBK       0010
PSQSIZE        0018 00000003

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