DRMBK Back to Index page
 
Prolog 
Control Block Contents 
   DRMBK DSECT
Storage Layout 
Cross Reference (Contains links to field and bit definitions)
Programming Interface Information:
This information is NOT intended to be
used as Programming Interfaces of z/VM.


  DRMBK Prolog Top of page
 
 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
 RELOCATION CONSIDERATIONS : None
 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 Top of page
 

 DRMBK DSECT Top of page
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 Top of page
 
 
*** 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 Top of page
 
 
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 6.4.0 Last updated on 24 Aug 2016 at 09:24:16 EDT.
Copyright IBM Corporation, 1990, 2016