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

DRMBK

Prolog  

Control Block Contents  
   DRMBK DSECT

Storage Layout  

Cross Reference (Contains links to field and bit definitions)  


DRMBK Prolog

 NAME       : HCPDRMBK
 DESCRIPTION: Delayed Response Message Block
 DSECT      : DRMBK
 FUNCTION   : To keep track of an expected delayed response to a
              CP command.
 LOCATED BY : Pointer (SDMDRMQF) in the Storage Device Management
              Common Data Area
 CREATED BY : HCPDRMAQ - Allocate and Queue a DRMBK
              HCPDRMFQ - Allocate & Queue a freestyle DRMBK
 DELETED BY : HCPDRMDQ - Dequeue and Release a DRMBK
 Comments   : - There are essentially two versions of this block:
              * When DRM_StyleGDM is on, the command is one of the
              "Generic Device Management" commands.  It has the
              command entry table address and was built by
              a "generic" routine.
              * When DRM_StyleFree is on, the command and command
              processor are more freestyle.  The command
              substitution data for the delayed responses is all
              stored in the block itself.  Only the userid and
              RDEV are still essential for
              QUERY PENDING COMMANDS processing.

 

DRMBK Control Block Content


DRMBK DSECT

Hex   Dec Type/Val   Lng Label (dup)    Comments
---- ---- --------- ---- -------------- --------
0000    0 Structure      DRMBK          Delayed Response Message Block
       This section is Common to all Commands.
0000    0 Bitstring    1 DRMCOMMON (0)  Start of the Common Area
0000    0 Address      4 DRMNEXT        Pointer to the next
                                        Delayed-Response Message Block
0004    4 Address      4 DRMPREV        Pointer to the previous
                                        Delayed-Response Message Block
0008    8 Character    3 DRMBKID        Identifies the storage area as a
                                        DRMBK block
000B   11 Bitstring    1 DRMBFLAG       Processing flags
          1... ....      DRM_StyleGDM   X'80' DRM_StyleGDM Indicates
                                        command is managed as a Generic
                                        Device Management command.
          .1.. ....      DRM_StyleFree  X'40' DRM_StyleFree Indicates
                                        command is a freestyle command.
          ..1. ....      DRM_FlashCopy  X'20' DRM_FlashCopy Indicates
                                        command is a FlashCopy command.
000C   12 Character    8 DRMUSER        Userid of the user issuing the
                                        command that resulted in a
                                        delayed response
0014   20 Address      4 DRMRDEV        Pointer to the RDEV that the
                                        Delayed Response is expected from
0018   24 Address      4 DRMABPRM       Pointer to a Abort Parm list used
                                        to stack a program return call
001C   28 Character    8 DRMABPTS       Abort Parm List Timestamp
0024   36 Bitstring    1 DRM_STYLE_DEPENDENT (0)
                                        Start of the style dependent
                                        area.
       Format of style dependent area when DRM_StyleGDM = 1.
       The block will be a fixed size equal to
       length(DRMCOMMON)+length(DRMGDM).
0024   36 Bitstring    1 DRMGDM (0)     Start of DRMGDM
0024   36 Address      4 DRMSRDV        Pointer to the secondary device
                                        RDEV
0028   40 Address      4 DRMFRDV        Pointer to the failed secondary
                                        device RDEV when DUPLEX ON is
                                        issued to replace the device
002C   44 Signed       2 DRMVLDLN       Length of VOLID
002E   46 Character    6 DRMVOLID       Volume identification label
0034   52 Address      4 DRMCMTB        Pointer to command table entry
                                        VCS holding command that resulted
                                        in delayed response message
0038   56 Signed       2 DRMCMDLN       Length of Command VCS
003A   58 Character   20 DRMCMD         The command VCS holding command
                                        options
004E   78 Signed       2 DRMOPTLN       Length of Option VCS
0050   80 Character   20 DRMOPT         The options
0064  100 Bitstring    1 DRMSCP         Command scope Size of a fixed GDM
                                        DRMBK in double words.
          0000000D       DRMGDMSIZE     ((*-DRMGDM)+(DRM_STYLE_DEPENDENT-
                                        DRMBK)+7)/8
       Format of style dependent area when DRM_StyleFree = 1.
       DRMBK will be a variable size block.
       The block will be a variable length equal to
       length(DRMCOMMON)+length(DRMSUBSIZE)+value of DRMSUBSIZE
0024   36 Bitstring    1 DRMFREE (0)    Start of DRMFREE
0024   36 Signed       2 DRMSUBSIZE     Size of the substitution data.
0026   38 Bitstring    1 DRMFREEDATA (0)
                                        Start of the Substitution data.
0026   38 Bitstring    9 DRMWITHUSERID  Substitution data with userid.
002F   47 Bitstring    1 DRMSUBDATA (0) Substitution data without userid.
       Constants for the DRMBK.
          00000014       DRMVCSMAX      20 Max size of a VCS. A change to
                                        this, and you must change
                                        assembler lengths manually.
     DRMGDMSIZE defined inline.
          00C4D9D4       DRMID          C'DRM' Identifier for a DRMBK

 

DRMBK Storage Layout

          
*** DRMBK - Delayed Response Message Block
*
*     +---------------------------+---------------------------+
*   0 |         DRMNEXT           |         DRMPREV           |
*     +--------------------+------+---------------------------+
*   8 |      DRMBKID       |:BFLAG|         DRMUSER-          |
*     +--------------------+------+---------------------------+
*  10 |          -(00C)           |         DRMRDEV           |
*     +---------------------------+---------------------------+
*  18 |         DRMABPRM          |        DRMABPTS-          |
*     +---------------------------+---------------------------+
*  20 |          -(01C)           |
*     +---------------------------+
*
*** DRMBK - Delayed Response Message Block
          
*** Overlay for DRM_STYLE_DEPENDENT in DRMBK
*
*                                 +---------------------------+
*  20 ...                      24 |         DRMSRDV           |
*     +---------------------------+-------------+-------------+
*  28 |         DRMFRDV           |  DRMVLDLN   |   (02E)-    |
*     +---------------------------+-------------+-------------+
*  30 |        -DRMVOLID          |         DRMCMTB           |
*     +-------------+-------------+---------------------------+
*  38 |  DRMCMDLN   |                                         |
*     +-------------+                                         |
*     |                        DRMCMD                         |
*     |                                         +-------------+
*  48 |                                         |  DRMOPTLN   |
*     +-----------------------------------------+-------------+
*  50 |                                                       |
*     =                        DRMOPT                         =
*     |                           +------+--------------------+
*  60 |                           |DRMSCP| 65
*     +---------------------------+------+
*
*** Overlay for DRM_STYLE_DEPENDENT in DRMBK
          
*** Overlay for DRM_STYLE_DEPENDENT in DRMBK
*
*                                 +-------------+-------------+
*  20 ...                      24 | DRMSUBSIZE  |DRMWITHUSERID|
*     +---------------------------+-------------+      +------+
*     |                                                |
*     +------------------------------------------------+
*
*** Overlay for DRM_STYLE_DEPENDENT in DRMBK

 

DRMBK Cross Reference

Symbol         Dspl Value
-------------- ---- -----
DRM_FlashCopy  000B 20
DRM_StyleFree  000B 40
DRM_StyleGDM   000B 80
DRM_STYLE_DEPENDENT
               0024
DRMABPRM       0018
DRMABPTS       001C
DRMBFLAG       000B
DRMBKID        0008
DRMCMD         003A
DRMCMDLN       0038
DRMCMTB        0034
DRMCOMMON      0000
DRMFRDV        0028
DRMFREE        0024
DRMFREEDATA    0026
DRMGDM         0024
DRMGDMSIZE     0064 0000000D
DRMID          002F 00C4D9D4
DRMNEXT        0000
DRMOPT         0050
DRMOPTLN       004E
DRMPREV        0004
DRMRDEV        0014
DRMSCP         0064
DRMSRDV        0024
DRMSUBDATA     002F
DRMSUBSIZE     0024
DRMUSER        000C
DRMVCSMAX      002F 00000014
DRMVLDLN       002C
DRMVOLID       002E
DRMWITHUSERID  0026

This information is based on z/VM V5R4.0. Last updated on 18 Feb 2010 at 03:38:05 EDT.
Copyright IBM Corporation, 1990, 2009