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

#### IPQBK

Prolog

Control Block Contents
IPQBK DSECT
IPQXBK DSECT

Storage Layout

Cross Reference (Contains links to field and bit definitions)

#### IPQBK Prolog

     NAME       : HCPIPQBK
     DESCRIPTION: I/O Priority Queueing Parameter Block
     DSECT      : IPQBK
     FUNCTION   : Contains I/O Priority Queueing Information
                  For A Guest
     LOCATED BY : VMDIPQPT
     CREATED BY : HCPLGN  At LOGON
     DELETED BY : HCPUSP  At LOGOFF
     SERIALIZED : The respective IPQBK lock (IPQLKWRD) must be held
                  exclusive in order to update any field in the IPQBK.
                  Also, IPQLKWRD must be held shared to reference any
                  field in the IPQBK.   However, field IPQDSKIP is
                  serialized by compare and swap logic, not the IPQBK
                  lock.

#### IPQBK Control Block Content

#### IPQBK DSECT

####

####

####

    Hex   Dec Type/Val   Lng Label (dup)    Comments
    ---- ---- --------- ---- -------------- --------
    0000    0 Structure      IPQBK          I/O Priority Queueing Parameter
                                            Block
    0000    0 Dbl-Word     8 IPQLKWRD (3)   Lockword for this control block
    0018   24 Bitstring    1 IPQRQLO        Requested low range value
    0019   25 Bitstring    1 IPQRQHI        Requested high range value
    001A   26 Bitstring    1 IPQF0          Flag byte 0
              1... ....      IPQRELRG       X'80' This is a RELATIVE range.
              .1.. ....      IPQABSRG       X'40' This is a ABSOLUTE range.
              ..1. ....      IPQGSSC        X'20' Guest requested I/O
                                            subsystem details which includes
                                            I/O priority facility status.
                                            This usually indicates that the
                                            guest is I/O priority aware.
    001B   27 Bitstring    1 *              Reserved for future IBM use
    001C   28 Bitstring    1 IPQEFLO        Effective low range value
    001D   29 Bitstring    1 IPQEFHI        Effective high range value
    001E   30 Bitstring    1 IPQQULO        Queueing Calculation range LO
                                            value
    001F   31 Bitstring    1 IPQQUHI        Queueing Calculation range HI
                                            value
    0020   32 Address      4 IPQEVNTQ       Event Information queue pointer
    0024   36 Signed       4 IPQDSKIP       Count of times that a DASD I/O
                                            request was outprioritized by
                                            another virtual machine's I/O.
                                            Serialized by compare and swap
                                            logic.
    0028   40 Bitstring    1 IPQEVCNT       Number of entries on the event
                                            data queue. Max = 20.
    0029   41 Bitstring    1 * (3)          Reserved for future IBM use
    002C   44 Signed       4 *              Reserved for future IBM use
    0030   48 Dbl-Word     8 * (2)          Reserved for future IBM use
    0040   64 Bitstring    1 IPQ$END (0)    The end
          Notes      : The following assembler equates are defined and can be
                used but do not appear in the control block expansion
                because they are in the PLX section and
                PRINT OFF,NOGEN is in effect.

    IPQXBK DSECT

    Hex   Dec Type/Val   Lng Label (dup)    Comments
    ---- ---- --------- ---- -------------- --------
    0000    0 Structure      IPQXBK         I/O-Priority Event Information
                                            Pending Queue
    0000    0 Address      4 IPQXPTR        Pointer to next entry in FIFO
                                            Queue
    0004    4 Bitstring    1 IPQXFLGH       SYSIOPQH byte when created
    0005    5 Bitstring    1 IPQXCPLO       SYSIOPLO byte when created
    0006    6 Bitstring    1 IPQXCPHI       SYSIOPHI byte when created
    0007    7 Bitstring    1 *              Reserved for future IBM use
    0008    8 Bitstring    1 IPQXNIP        Input Flags for HCPVMNIP
              1... ....      IPQXCP         X'80' Low and High values are new
                                            CP range from real machine check.
              .1.. ....      IPQXDIS        X'40' I/O Priority Queuing went
                                            from enabled to disabled
              ..1. ....      IPQXENB        X'20' I/O Priority Queuing went
                                            from disabled to enabled
              ...1 ....      IPQXRV10       X'10' Reserved for future IBM use
              .... 1...      IPQXUSER       X'08' Low and High values are new
                                            USER range values.
              .... .1..      IPQXREL        X'04' This is a RELATIVE range.
                                            Valid only if new USER range.
              .... ..1.      IPQXABS        X'02' This is a ABSOLUTE range.
                                            Valid only if new USER range.
              .... ...1      IPQXRV01       X'01' Reserved for future IBM use
    0009    9 Bitstring    1 IPQXUSLO       New LO Value of User Priority
                                            Range
    000A   10 Bitstring    1 IPQXUSHI       New HI Value of User Priority
                                            Range
    000B   11 Bitstring    1 *              Reserved for future IBM use
    000C   12 Signed       4 *              Reserved for future IBM use
    0010   16 Bitstring    1 IPQX$END (0)   The end
          Notes      : The following assembler equates are defined and can be
                used but do not appear in the control block expansion
                because they are in the PLX section and
                PRINT OFF,NOGEN is in effect.
          IPQXSZB   EQU   (IPQ$END-IPQBK)       Size in bytes
          IPQXSZ    EQU   (IPQ$END-IPQBK+7)/8   Size in d-words

    IPQBK Storage Layout

    *** IPQBK - I/O Priority Queueing Parameter Block
    *
    *     +-------------------------------------------------------+
    *   0 |                                                       |
    *     =                       IPQLKWRD                        =
    *     |                                                       |
    *     +------+------+------+------+------+------+------+------+
    *  18 |:RQLO |:RQHI |IPQF0 |//////|:EFLO |:EFHI |:QULO |:QUHI |
    *     +------+------+------+------+------+------+------+------+
    *  20 |         IPQEVNTQ          |         IPQDSKIP          |
    *     +------+--------------------+---------------------------+
    *  28 |:EVCNT|////////////////////|///////////////////////////|
    *     +------+--------------------+---------------------------+
    *  30 |///////////////////////////////////////////////////////|
    *     |///////////////////////////////////////////////////////|
    *     +-------------------------------------------------------+
    *
    *** IPQBK - I/O Priority Queueing Parameter Block

    *** IPQXBK - I/O-Priority Event Information Pending Queue
    *
    *     +---------------------------+------+------+------+------+
    *   0 |         IPQXPTR           |:XFLGH|:XCPLO|:XCPHI|//////|
    *     +------+------+------+------+------+------+------+------+
    *   8 |:XNIP |:XUSLO|:XUSHI|//////|///////////////////////////|
    *     +------+------+------+------+---------------------------+
    *
    *** IPQXBK - I/O-Priority Event Information Pending Queue

    IPQBK Cross Reference

    Symbol         Dspl Value
    -------------- ---- -----
    IPQ$END        0040
    IPQABSRG       001A 40
    IPQDSKIP       0024
    IPQEFHI        001D
    IPQEFLO        001C
    IPQEVCNT       0028
    IPQEVNTQ       0020
    IPQF0          001A
    IPQGSSC        001A 20
    IPQLKWRD       0000
    IPQQUHI        001F
    IPQQULO        001E
    IPQRELRG       001A 80
    IPQRQHI        0019
    IPQRQLO        0018
    IPQX$END       0010
    IPQXABS        0008 02
    IPQXCP         0008 80
    IPQXCPHI       0006
    IPQXCPLO       0005
    IPQXDIS        0008 40
    IPQXENB        0008 20
    IPQXFLGH       0004
    IPQXNIP        0008
    IPQXPTR        0000
    IPQXREL        0008 04
    IPQXRV01       0008 01
    IPQXRV10       0008 10
    IPQXUSER       0008 08
    IPQXUSHI       000A
    IPQXUSLO       0009

    This information is
    based on z/VM V5R2.0.
    Last updated on 12 Apr 2006 at 16:59:38 EDT.

    Copyright IBM Corporation, 1990, 2005