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

QDIO

Prolog  

Control Block Contents  
   QDIO DSECT

Storage Layout  

Cross Reference (Contains links to field and bit definitions)  


QDIO Prolog

 NAME       : HCPQDIO
 DESCRIPTION: Queued Direct I/O Control Block
 DSECT      : QDIO
 FUNCTION   :
              HCPQDIO maps all the guest's and associated CP shadow
              QDIO Queues for a specific subchannel.
 LOCATED BY : VDEVQDIO
 SERIALIZED : VDEV Lock
 CREATED BY : Dynamically created by HCPGETST when a QDIO
              Queue is created with an Establish-QDIO-
              Queues Channel Command.
 DELETED BY : Deleted by HCPRELST when a QDIO Activate-
              QDIO-Queues Channel Command terminates.

 

QDIO Control Block Content


QDIO DSECT

Hex   Dec Type/Val   Lng Label (dup)    Comments
---- ---- --------- ---- -------------- --------
0000    0 Structure      QDIO           Queued Direct I/O Control Block
0000    0 Dbl-Word     8 QDIOLOCK (3)   QDIO Lock Word
0018   24 Address      4 QDIORDEV       RDEV associated with this queue
001C   28 Signed       4 QDIOREAS       Failing reason code during QDIO
                                        Queue creation.
0020   32 Address      4 QDICPQDR       Address of CP's Queue-Description
                                        Record (QDR).
     Following Fields Serialized on Compare and Swap
0024   36 Address      4 QDIOQERR       Specifies a QIOBK that has an
                                        error to report.
     -----End of Compare and Swap Serialization***************----
     QDIO Queue Information Block
0028   40 Bitstring    8 QDIGQIB64 (0)
0028   40 Signed       4 QDIGQIBH       High order 64 bit addr word
002C   44 Signed       4 QDIGQIB        Guest absolute address of QIB or
                                        low order word 64 bit address
0030   48 Address      4 QDIHQIB        Host absolute address of QIB
0034   52 Bitstring    1 QDIOFG1        Storage Access Flag
          1111 ....      QDIQKEY        X'F0' Storage Key Mask for QIB
          .... 1...      QDIOACT        X'08' QDIO Q's have been
                                        activated
          .... .1..      QDIODOFS       X'04' Delete QDIO Queues when
                                        final status is received.
          .... ..1.      QDIOGA64       X'02' All guest absolute
                                        addresses are 64 bit
0035   53 Bitstring    1 * (3)          Reserved for future IBM use
     Input / Output QDIO Queues
0038   56 Bitstring    1 QDIOFMT        QDIO Format Type
0039   57 Bitstring    1 QDINPCT        Number of Input Queues
003A   58 Bitstring    1 QDIOUTCT       Number of Output Queues
003B   59 Bitstring    1 QDIOHWS        Hardware Support Flags
          1... ....      QDISIGAW       X'80' SIGA-w Initiate Write
                                        Supported
          .1.. ....      QDISIGAR       X'40' SIGA-r Initiate Read
                                        Supported
          ..1. ....      QDISIGAS       X'20' SIGA-s Synchronize
                                        Supported
003C   60 Address      4 QDINPUT        Pointer to a link list of QIOBKs
                                        for all Input Queues
0040   64 Address      4 QDIOUTQ        Pointer to a link list of QIOBKs
                                        for all Output Queues
0044   68 Signed       4 *              Reserved for future IBM use
0048   72 Signed       4 *              Reserved for future IBM use
004C   76 Character    1 QDI$END (0)    End of Queued Direct I/O CB
     Notes : The following assembler equates are defined and can be used but
     do not appear in the control block expansion because they the PLX
     section and PRINT OFF,NOGEN is in effect.

 

QDIO Storage Layout

          
*** QDIO - Queued Direct I/O Control Block
*
*     +-------------------------------------------------------+
*   0 |                                                       |
*     =                       QDIOLOCK                        =
*     |                                                       |
*     +---------------------------+---------------------------+
*  18 |         QDIORDEV          |         QDIOREAS          |
*     +---------------------------+---------------------------+
*  20 |         QDICPQDR          |         QDIOQERR          |
*     +---------------------------+---------------------------+
*  28 |         QDIGQIBH          |         QDIGQIB           |
*     +---------------------------+------+--------------------+
*  30 |         QDIHQIB           |:OFG1 |////////////////////|
*     +------+------+------+------+------+--------------------+
*  38 |:OFMT |:NPCT |:OUTCT|:OHWS |         QDINPUT           |
*     +------+------+------+------+---------------------------+
*  40 |         QDIOUTQ           |///////////////////////////|
*     +---------------------------+---------------------------+
*  48 |///////////////////////////|
*     +---------------------------+
*
*** QDIO - Queued Direct I/O Control Block

 

QDIO Cross Reference

Symbol         Dspl Value
-------------- ---- -----
QDI$END        004C
QDICPQDR       0020
QDIGQIB        002C
QDIGQIBH       0028
QDIGQIB64      0028
QDIHQIB        0030
QDINPCT        0039
QDINPUT        003C
QDIOACT        0034 08
QDIODOFS       0034 04
QDIOFG1        0034
QDIOFMT        0038
QDIOGA64       0034 02
QDIOHWS        003B
QDIOLOCK       0000
QDIOQERR       0024
QDIORDEV       0018
QDIOREAS       001C
QDIOUTCT       003A
QDIOUTQ        0040
QDIQKEY        0034 F0
QDISIGAR       003B 40
QDISIGAS       003B 20
QDISIGAW       003B 80

This information is based on z/VM V4R1.0.
Last updated on 5 Jun 2001 at 16:18:47 EDT.
Copyright IBM Corporation, 1990, 2001